diff --git a/stable.user.js b/stable.user.js
index eb8e57d..2ce55fe 100755
--- a/stable.user.js
+++ b/stable.user.js
@@ -46,7 +46,7 @@
 // : Script header {{{
 // ==UserScript==
 // @name         Moodle/Elearning/KMOOC test help
-// @version      2.1.3.9
+// @version      2.1.3.10
 // @description  Online Moodle/Elearning/KMOOC test help
 // @author       MrFry
 // @match        https://elearning.uni-obuda.hu/*
@@ -335,7 +335,8 @@
         }
       })
     } catch (e) {
-      debugLog("Couldn't get images from result (old)")
+      warn(e)
+      warn("Couldn't get images from result (old)")
     }
   }
 
@@ -394,7 +395,7 @@
           uid: getUid(),
         }
 
-        debugLog('Sent data', sentData)
+        log('Sent data', sentData)
         post('ask', sentData).then((results) => {
           removeLoadingMessage()
           ShowAnswers(
@@ -471,7 +472,13 @@
       let questionNodes
       Object.keys(questionNodeVariants).some((key) => {
         const variant = questionNodeVariants[key]
-        if (variant.criteria()) {
+        let criteriaPassed = false
+        try {
+          criteriaPassed = variant.criteria()
+        } catch (e) {
+          debugLog('Criteria check failed with error (question nodes)', e)
+        }
+        if (criteriaPassed) {
           questionNodes = variant.getter()
           if (questionNodes.length === 0) {
             warn(
@@ -762,7 +769,7 @@
         try {
           criteriaPassed = variant.criteria()
         } catch (e) {
-          debugLog('Criteria check failed with error', e)
+          debugLog('Criteria check failed with error (result nodes)', e)
         }
         if (criteriaPassed) {
           resultNodes = variant.getter()
@@ -1152,7 +1159,7 @@
         ],
       }
 
-      debugLog(sentData)
+      log(sentData)
       post('isAdding', sentData).then((res) => {
         ShowSaveQuizDialog(res.success, sentData, res.totalNewQuestions)
       })
@@ -1226,7 +1233,7 @@
         testUrl: url,
       }
 
-      debugLog('Sent data', sentData)
+      log('Sent data', sentData)
       post('ask', sentData).then((results) => {
         removeLoadingMessage()
         ShowAnswers(
@@ -1239,8 +1246,8 @@
         )
       })
     } catch (e) {
-      debugLog('Error in handleAVRQuiz')
-      debugLog(e)
+      warn('Error in handleAVRQuiz')
+      warn(e)
     }
   }
 
@@ -1919,7 +1926,7 @@
   //   }
   // }>
   function ShowAnswers(results) {
-    debugLog(results)
+    log(results)
     try {
       const answers = results.reduce((acc, res) => {
         const prepared = PrepareAnswers(res)
@@ -1948,8 +1955,8 @@
         )
       }
     } catch (e) {
-      debugLog('Error showing answers')
-      debugLog(e)
+      warn('Error showing answers')
+      warn(e)
     }
   }
 
@@ -2013,9 +2020,9 @@
           sentData.subj = getCurrentSubjectName()
         } catch (e) {
           sentData.subj = 'NOSUBJ'
-          debugLog('unable to get subject name :c')
+          warn('unable to get subject name :c')
         }
-        debugLog('SENT DATA', sentData)
+        log('SENT DATA', sentData)
         post('isAdding', sentData).then((res) => {
           ShowSaveQuizDialog(res.success, sentData, res.totalNewQuestions)
         })
@@ -2073,8 +2080,8 @@
         installSource: info().script.updateURL,
       })
     } catch (err) {
-      debugLog('Unexpected error while registering script')
-      debugLog(err)
+      warn('Unexpected error while registering script')
+      warn(err)
     }
   }
 
@@ -2107,8 +2114,8 @@
           video.currentTime -= seekTime
         }
       } catch (err) {
-        debugLog('Hotkey error.')
-        debugLog(err.message)
+        warn('Hotkey error.')
+        warn(err.message)
       }
     })
     var toadd = getVideoElement()
@@ -2453,8 +2460,8 @@
 
         result.msgContainer.child.msgDiv.elem.innerText = getCurrMsg().m
       } catch (e) {
-        debugLog('Error in message updating')
-        debugLog(e)
+        warn('Error in message updating')
+        warn(e)
       }
     }
     updateMessageText()