{
  "information": {
    "Title": "\u0b92\u0bb0\u0bc7 \u0baa\u0bca\u0bb0\u0bc1\u0bb3\u0bcd\u0b95\u0bca\u0ba3\u0bcd\u0b9f \u0b9a\u0bca\u0bb2\u0bcd\u0bb2\u0bc1\u0b9f\u0ba9\u0bcd \u0b87\u0ba3\u0bc8",
    "Author": [
      "MarinahToh",
      "lookang"
    ],
    "AuthorLogo": [
      "",
      "./01authorlookang50x50.png"
    ],
    "Password": "",
    "Keywords": "",
    "Abstract": "",
    "Copyright": "",
    "Level": "",
    "Language": "",
    "Logo": [
      "./Unnamed3/logo.png"
    ],
    "RunAlways": "true",
    "ModelTab": "",
    "ModelTabTitle": "",
    "ModelName": "",
    "FixedNavigationBar": "false",
    "CSSFile": "",
    "DetectedFiles": [
      "./01authorlookang50x50.png",
      "./Unnamed3/logo.png"
    ],
    "AuxiliaryFiles": [
      "./Unnamed3/",
      "./Unnamed3/logo.png"
    ],
    "HTMLHead": "<style type=\"text/css\">\n.metadata { display: none; }\n</style>\n\n<script \nasync=\"true\" src=\"https://www.googletagmanager.com/gtag/js?id=G-S9EWRY1CPJ\"></script>\n<script>\n  window.dataLayer = window.dataLayer || [];\n  function gtag(){dataLayer.push(arguments);}\n  gtag('js', new Date());\n\n  gtag('config', 'G-S9EWRY1CPJ');\n</script>",
    "SaveInXMLFormat": "false",
    "IncludeSource": "true",
    "UseIndexHtml": "false",
    "IncludeLibrary": "true",
    "UglifyJS": "false",
    "PreviewFullModel": "false",
    "UseInterpreter": "true",
    "UseDeltaForODE": "false"
  },
  "description": {
    "pages": []
  },
  "model": {
    "variables": {
      "pages": [
        {
          "Name": "EditableVariables",
          "Active": "true",
          "Internal": "false",
          "Type": "VARIABLE_EDITOR",
          "PageComment": "",
          "Variables": [
            {
              "Name": "numberofrounds",
              "Value": "4",
              "Type": "double",
              "Dimension": "",
              "Comment": "",
              "Domain": "public"
            },
            {
              "Name": "numberofoption",
              "Value": "4",
              "Type": "double",
              "Dimension": "",
              "Comment": "",
              "Domain": "public"
            },
            {
              "Name": "answerstringarray",
              "Value": "[[\"\u0baa\u0baf\u0bae\u0bcd\",\"\u0baa\u0bae\u0bcd\u0baa\u0bb0\u0bae\u0bcd\",\"\u0baa\u0b9f\u0bcd\u0b9f\u0bae\u0bcd\",\"\u0baa\u0b9f\u0bae\u0bcd\"],[\"\u0bb5\u0bc0\u0b9f\u0bc1\",\"\u0baa\u0bb3\u0bcd\u0bb3\u0bbf\",\"\u0baa\u0bc2\u0b99\u0bcd\u0b95\u0bbe\",\"\u0ba4\u0bbf\u0b9f\u0bb2\u0bcd\"],[\"\u0ba4\u0bca\u0b9f\u0b95\u0bcd\u0b95\u0bae\u0bcd\",\"\u0bae\u0bc1\u0b9f\u0bbf\u0bb5\u0bc1\",\"\u0ba4\u0baf\u0bbe\u0bb0\u0bcd\",\"\u0b9a\u0bb5\u0bbe\u0bb2\u0bcd\"],[\"\u0ba4\u0ba8\u0bcd\u0ba4\u0bc8\",\"\u0baa\u0bbe\u0b9f\u0bcd\u0b9f\u0bbf\",\"\u0ba4\u0bbe\u0ba4\u0bcd\u0ba4\u0bbe\",\"\u0ba4\u0baf\u0bbe\u0bb0\u0bcd\"]]",
              "Type": "double",
              "Dimension": "[numberofoption][numberofrounds]",
              "Comment": "",
              "Domain": "public"
            },
            {
              "Name": "catchanswerarray",
              "Value": "[\"\u0b85\u0b9a\u0bcd\u0b9a\u0bae\u0bcd\",\"\u0b87\u0bb2\u0bcd\u0bb2\u0bae\u0bcd\",\"\u0b86\u0bb0\u0bae\u0bcd\u0baa\u0bae\u0bcd\",\"\u0b85\u0baa\u0bcd\u0baa\u0bbe\"]",
              "Type": "double",
              "Dimension": "[numberofoption][numberofrounds]",
              "Comment": "",
              "Domain": "public"
            },
            {
              "Name": "",
              "Value": "",
              "Type": "double",
              "Dimension": "",
              "Comment": "",
              "Domain": "public"
            },
            {
              "Name": "vx",
              "Value": "Math.max(Math.random(),0.5)",
              "Type": "double",
              "Dimension": "[numberofoption]",
              "Comment": "",
              "Domain": "public"
            },
            {
              "Name": "backGroundImage",
              "Value": "\"./Picture1.png\"",
              "Type": "double",
              "Dimension": "",
              "Comment": "",
              "Domain": "public"
            },
            {
              "Name": "title",
              "Value": "\"\u0b92\u0bb0\u0bc7 \u0baa\u0bca\u0bb0\u0bc1\u0bb3\u0bcd\u0b95\u0bca\u0ba3\u0bcd\u0b9f \u0b9a\u0bca\u0bb2\u0bcd\u0bb2\u0bc1\u0b9f\u0ba9\u0bcd \u0b87\u0ba3\u0bc8\"",
              "Type": "double",
              "Dimension": "",
              "Comment": "",
              "Domain": "public"
            },
            {
              "Name": "",
              "Value": "",
              "Type": "double",
              "Dimension": "",
              "Comment": "",
              "Domain": "public"
            }
          ]
        },
        {
          "Name": "Var Table",
          "Active": "true",
          "Internal": "false",
          "Type": "VARIABLE_EDITOR",
          "PageComment": "",
          "Variables": [
            {
              "Name": "font",
              "Value": "\"\"",
              "Type": "String",
              "Dimension": "",
              "Comment": "",
              "Domain": "public"
            },
            {
              "Name": "t",
              "Value": "0",
              "Type": "double",
              "Dimension": "",
              "Comment": "",
              "Domain": "public"
            },
            {
              "Name": "dt",
              "Value": "0.05",
              "Type": "double",
              "Dimension": "",
              "Comment": "",
              "Domain": "public"
            },
            {
              "Name": "n",
              "Value": "numberofoption",
              "Type": "double",
              "Dimension": "",
              "Comment": "",
              "Domain": "public"
            },
            {
              "Name": "x",
              "Value": "2.8",
              "Type": "double",
              "Dimension": "[n]",
              "Comment": "",
              "Domain": "public"
            },
            {
              "Name": "ymax",
              "Value": "6",
              "Type": "double",
              "Dimension": "",
              "Comment": "",
              "Domain": "public"
            },
            {
              "Name": "y",
              "Value": "\"\"",
              "Type": "double",
              "Dimension": "[n]",
              "Comment": "[1,2.5,4,5.5]",
              "Domain": "public"
            },
            {
              "Name": "vy",
              "Value": "0",
              "Type": "double",
              "Dimension": "[n]",
              "Comment": "Math.max(Math.random(),0.5)",
              "Domain": "public"
            },
            {
              "Name": "text",
              "Value": "[1,2,3,4]",
              "Type": "double",
              "Dimension": "[n]",
              "Comment": "",
              "Domain": "public"
            },
            {
              "Name": "textanswer",
              "Value": "[answerstringarray[0][0],answerstringarray[0][1],answerstringarray[0][2],answerstringarray[0][3],answerstringarray[0][4]]",
              "Type": "String",
              "Dimension": "[n]",
              "Comment": "[\"took\",\"taked\",\"takes\",\"take\"]",
              "Domain": "public"
            },
            {
              "Name": "vocabaudio",
              "Value": "",
              "Type": "boolean",
              "Dimension": "",
              "Comment": "",
              "Domain": "public"
            },
            {
              "Name": "a",
              "Value": "Math.round(Math.random()*10)",
              "Type": "double",
              "Dimension": "[n]",
              "Comment": "",
              "Domain": "public"
            },
            {
              "Name": "b",
              "Value": "Math.round(Math.random()*10)",
              "Type": "double",
              "Dimension": "[n]",
              "Comment": "",
              "Domain": "public"
            },
            {
              "Name": "c",
              "Value": "1",
              "Type": "double",
              "Dimension": "[n]",
              "Comment": "",
              "Domain": "public"
            },
            {
              "Name": "",
              "Value": "",
              "Type": "double",
              "Dimension": "",
              "Comment": "",
              "Domain": "public"
            }
          ]
        },
        {
          "Name": "Var Table 2",
          "Active": "true",
          "Internal": "false",
          "Type": "VARIABLE_EDITOR",
          "PageComment": "",
          "Variables": [
            {
              "Name": "xc",
              "Value": "0",
              "Type": "double",
              "Dimension": "",
              "Comment": "",
              "Domain": "public"
            },
            {
              "Name": "yc",
              "Value": "2.5",
              "Type": "double",
              "Dimension": "",
              "Comment": "",
              "Domain": "public"
            },
            {
              "Name": "score",
              "Value": "0",
              "Type": "double",
              "Dimension": "",
              "Comment": "",
              "Domain": "public"
            },
            {
              "Name": "textcatch",
              "Value": "\"\"",
              "Type": "String",
              "Dimension": "",
              "Comment": "\"take\"",
              "Domain": "public"
            },
            {
              "Name": "correct",
              "Value": "0",
              "Type": "String",
              "Dimension": "",
              "Comment": "",
              "Domain": "public"
            },
            {
              "Name": "log",
              "Value": "",
              "Type": "String",
              "Dimension": "",
              "Comment": "",
              "Domain": "public"
            },
            {
              "Name": "notrynumber",
              "Value": "0",
              "Type": "double",
              "Dimension": "",
              "Comment": "",
              "Domain": "public"
            },
            {
              "Name": "",
              "Value": "",
              "Type": "double",
              "Dimension": "",
              "Comment": "",
              "Domain": "public"
            }
          ]
        }
      ]
    },
    "initialization": {
      "pages": [
        {
          "Name": "shuffleArray(array)",
          "Active": "true",
          "Internal": "false",
          "Type": "CODE_EDITOR",
          "Comment": "",
          "Code": "\ntextcatch = catchanswerarray[0] // assign first word to catcher rabbit\n//numeric.linspace (start,stop,number)\ny = numeric.linspace(0,ymax,numberofoption) //using numeric library to arrange\n\n\nshuffleArray(y);\n//\nsetResponsiveFontSize()\n"
        },
        {
          "Name": "undefined",
          "Active": "true",
          "Internal": "false",
          "Type": "CODE_EDITOR",
          "Comment": "",
          "Code": "if (log==undefined){\n  log=\"\";\n  }"
        },
        {
          "Name": "messageSize",
          "Active": "true",
          "Internal": "false",
          "Type": "CODE_EDITOR",
          "Comment": "",
          "Code": "if (_isMobile){\n  //do nothing\n  }\n  \n  else{\n    // copy this into the initialization\n// make the font bigger\nvar fontSize = \"1vw\"\n_view.plottingPanel.getMessageDecoration(\"TL\").getFont().setFontSize(fontSize);\n_view.plottingPanel.getMessageDecoration(\"TR\").getFont().setFontSize(fontSize);\n_view.plottingPanel.getMessageDecoration(\"BL\").getFont().setFontSize(fontSize);\n_view.plottingPanel.getMessageDecoration(\"BR\").getFont().setFontSize(fontSize);\n\n//_view.plottingPanel.getMessageDecoration(\"TL\").getStyle().setFillColor(\"red\");\n    }"
        },
        {
          "Name": "picturesize",
          "Active": "true",
          "Internal": "false",
          "Type": "CODE_EDITOR",
          "Comment": "",
          "Code": "//orig_listener = _view.plottingPanel.getAxisX().panelChangeListener; _view.plottingPanel.getAxisX().panelChangeListener = function(e) { orig_listener(e); _view.backgroundsoccerfield.setSizeX(_view.plottingPanel.getRealWorldXMax()-_view.plottingPanel.getRealWorldXMin()); _view.backgroundsoccerfield.setSizeY(_view.plottingPanel.getRealWorldYMax()-_view.plottingPanel.getRealWorldYMin()); }"
        }
      ]
    },
    "evolution": {
      "information": {
        "FPS": "20",
        "SPD": "1",
        "RealTimeVariable": "",
        "Autoplay": "false"
      },
      "pages": [
        {
          "Name": "Evol Page",
          "Active": "true",
          "Internal": "false",
          "Type": "ODE_EDITOR",
          "Comment": "",
          "IndependentVariable": "t",
          "Increment": "dt",
          "Equations": [
            {
              "state": "x[i]",
              "rate": "-vx[i]"
            }
          ],
          "Method": "RungeKutta",
          "AbsoluteTolerance": "0.00001",
          "PreliminaryCode": {
            "Code": "",
            "Comment": "Code to be executed before rate equations are evaluated"
          },
          "EventMaximumStep": "",
          "Events": {
            "pages": [
              {
                "Name": "collisioncorrect",
                "Active": "true",
                "Internal": "false",
                "Type": "EVENT_EDITOR",
                "Action": "// Increment score and correct answers\nscore = score + 2;\ncorrect = correct + 1;\n\n// Play the corresponding audio clip\nif (correct == 1) {\n    audio.play();\n    correctAns1.play();\n    // 3-sec pause\n    var date = new Date();\n    var curDate = null;\n    do { curDate = new Date(); }\n    while(curDate-date < 3000);\n}\nif (correct == 2) {\n    audio.play();\n    correctAns2.play();\n    // 3-sec pause\n    var date = new Date();\n    var curDate = null;\n    do { curDate = new Date(); }\n    while(curDate-date < 3000);\n}\nif (correct == 3) {\n    audio.play();\n    correctAns3.play();\n    // 3-sec pause\n    var date = new Date();\n    var curDate = null;\n    do { curDate = new Date(); }\n    while(curDate-date < 3000);\n}\nif (correct == 4) {\n    audio.play();\n    correctAns4.play();\n    // 3-sec pause\n    var date = new Date();\n    var curDate = null;\n    do { curDate = new Date(); }\n    while(curDate-date < 3000);\n}\n\nif (correct == 4) {\n    audio1.play();\n}\n\n// Log the answer\nlog = log + \"\\n\" + textanswer[0] + \"  \u0b8e\u0ba9\u0bcd\u0baa\u0ba4\u0bc1  \" + textcatch + \"\u2705\"; \n\n// Set values in an array\nx[0] = 3;\nx[1] = 3;\nx[2] = 3;\nx[3] = 3;\n\n// Shuffle an array\nshuffleArray(y); \n\n// Provide speech feedback\nspeech(textanswer[0] + \" \u0b8e\u0ba9\u0bcd\u0baa\u0ba4\u0bc1  \" + textcatch);\n\n// Check if the correct answers equal the number of rounds and manage the game flow\nif (correct == numberofrounds) { // game mechanism counter\n  _pause();\n  _tools.showOkDialog(\"  \u0ba8\u0ba9\u0bcd\u0bb1\u0bc1   \" + score + \"/\" + 2 * numberofrounds + \" !\");\n  _view.audio1.play();\n} else {\n  textanswer = answerstringarray[correct]; // since correct is increased by 1, use this to change 4 options\n  textcatch = catchanswerarray[correct]; // change basket text as well\n}\n\n// Change speed and reset try number\nvyspeedchange();\nnotrynumber = 0;",
                "Comment": "",
                "EventType": "CROSSING_EVENT",
                "Iterations": "100",
                "Method": "BISECTION",
                "StopAtEvent": "false",
                "Tolerance": "1.0",
                "ZeroCondition": "return Math.sqrt((x[0]-xc)*(x[0]-xc)+(y[0]-yc)*(y[0]-yc))-0.5;"
              },
              {
                "Name": "miss",
                "Active": "true",
                "Internal": "false",
                "Type": "EVENT_EDITOR",
                "Action": "x[0] = 3;\nnotrynumber = notrynumber+1;\nif (notrynumber%4==0) {\nscore=score-0.5;\nlog = log+\"\\n\"+\"\u53e3\u53e3\"+textcatch+\"\u2753\";\n}",
                "Comment": "",
                "EventType": "CROSSING_EVENT",
                "Iterations": "100",
                "Method": "BISECTION",
                "StopAtEvent": "false",
                "Tolerance": "1.0e-5",
                "ZeroCondition": "return x[0]-0;"
              },
              {
                "Name": "miss1",
                "Active": "true",
                "Internal": "false",
                "Type": "EVENT_EDITOR",
                "Action": "x[1] = 3;\nnotrynumber = notrynumber+1;\nif (notrynumber%4==0) {\nscore=score-0.5;\nlog = log+\"\\n\"+\"\u53e3\u53e3\"+textcatch+\"\u2753\";\n}",
                "Comment": "",
                "EventType": "CROSSING_EVENT",
                "Iterations": "100",
                "Method": "BISECTION",
                "StopAtEvent": "false",
                "Tolerance": "1.0e-5",
                "ZeroCondition": "return x[1]-0;"
              },
              {
                "Name": "miss2",
                "Active": "true",
                "Internal": "false",
                "Type": "EVENT_EDITOR",
                "Action": "x[2] = 3;\nnotrynumber = notrynumber+1;\nif (notrynumber%4==0) {\nscore=score-0.5;\nlog = log+\"\\n\"+\"\u53e3\u53e3\"+textcatch+\"\u2753\";\n}",
                "Comment": "",
                "EventType": "CROSSING_EVENT",
                "Iterations": "100",
                "Method": "BISECTION",
                "StopAtEvent": "false",
                "Tolerance": "1.0e-5",
                "ZeroCondition": "return x[2]-0;"
              },
              {
                "Name": "miss3",
                "Active": "true",
                "Internal": "false",
                "Type": "EVENT_EDITOR",
                "Action": "x[3] = 3;\nnotrynumber = notrynumber+1;\nif (notrynumber%4==0) {\nscore=score-0.5;\nlog = log+\"\\n\"+\"\u53e3\u53e3\"+textcatch+\"\u2753\";\n}",
                "Comment": "",
                "EventType": "CROSSING_EVENT",
                "Iterations": "100",
                "Method": "BISECTION",
                "StopAtEvent": "false",
                "Tolerance": "1.0e-5",
                "ZeroCondition": "return x[3]-0;"
              },
              {
                "Name": "collisionwrong2",
                "Active": "true",
                "Internal": "false",
                "Type": "EVENT_EDITOR",
                "Action": "//alert();\nscore=score-1;\nlog = log+\"\\n\"+textanswer[1]+textcatch+\"\u274c\";\n//x[0]=3;\nx[1]=3;\n//x[2]=3;\n//x[3]=3;",
                "Comment": "",
                "EventType": "CROSSING_EVENT",
                "Iterations": "100",
                "Method": "BISECTION",
                "StopAtEvent": "false",
                "Tolerance": "1.0",
                "ZeroCondition": "return Math.sqrt((x[1]-xc)*(x[1]-xc)+(y[1]-yc)*(y[1]-yc))-0.25;"
              },
              {
                "Name": "collisionwrong 3",
                "Active": "true",
                "Internal": "false",
                "Type": "EVENT_EDITOR",
                "Action": "//alert();\nscore=score-1;\nlog = log+\"\\n\"+textanswer[2]+textcatch+\"\u274c\";\n//x[0]=3;\n//x[1]=3;\nx[2]=3;\n//x[3]=3;",
                "Comment": "",
                "EventType": "CROSSING_EVENT",
                "Iterations": "100",
                "Method": "BISECTION",
                "StopAtEvent": "false",
                "Tolerance": "1.0",
                "ZeroCondition": "return Math.sqrt((x[2]-xc)*(x[2]-xc)+(y[2]-yc)*(y[2]-yc))-0.25;"
              },
              {
                "Name": "collisionwrong 4",
                "Active": "true",
                "Internal": "false",
                "Type": "EVENT_EDITOR",
                "Action": "//alert();\nscore=score-1;\nlog = log+\"\\n\"+textanswer[3]+textcatch+\"\u274c\";\n//x[0]=3;\n//x[1]=3;\n//x[2]=3;\nx[3]=3;\n",
                "Comment": "",
                "EventType": "CROSSING_EVENT",
                "Iterations": "100",
                "Method": "BISECTION",
                "StopAtEvent": "false",
                "Tolerance": "1.0",
                "ZeroCondition": "return Math.sqrt((x[3]-xc)*(x[3]-xc)+(y[3]-yc)*(y[3]-yc))-0.25;"
              }
            ]
          },
          "ZenoEffect": {
            "Code": "",
            "Comment": "",
            "StopAfterEffect": "true"
          },
          "AccelerationIndependentOfVelocity": "false",
          "ForceSynchronization": "false",
          "UseBestInterpolation": "false",
          "EstimateFirstStep": "false",
          "MemoryLength": "",
          "InternalStep": "",
          "MaximumStep": "",
          "MaximumNumberOfSteps": "10000",
          "RelativeTolerance": "",
          "DelayList": "",
          "DelayMaximum": "",
          "DelayAddDiscont": "",
          "DelayInitialCondition": {
            "Code": "",
            "Comment": ""
          },
          "DirectIncidenceMatrix": "",
          "Discontinuities": {
            "pages": []
          },
          "ErrorHandling": {
            "pages": []
          }
        }
      ]
    },
    "fixed_relations": {
      "pages": [
        {
          "Name": "FixRel Page",
          "Active": "true",
          "Internal": "false",
          "Type": "CODE_EDITOR",
          "Comment": "",
          "Code": ""
        }
      ]
    },
    "custom": {
      "pages": [
        {
          "Name": "shuffleArray(array)",
          "Active": "true",
          "Internal": "false",
          "Type": "LIBRARY_EDITOR",
          "Comment": "",
          "Code": "// in initialization\n// possible usage if x is the array\n//shuffleArray(x);\n\n\n//https://stackoverflow.com/questions/2450954/how-to-randomize-shuffle-a-javascript-array\n/**\n * Randomize array element order in-place.\n * Using Durstenfeld shuffle algorithm.\n */\nfunction shuffleArray(array) {\n    for (var i = array.length - 1; i > 0; i--) {\n        var j = Math.floor(Math.random() * (i + 1));\n        var temp = array[i];\n        array[i] = array[j];\n        array[j] = temp;\n    }\n}"
        },
        {
          "Name": "speech",
          "Active": "true",
          "Internal": "false",
          "Type": "LIBRARY_EDITOR",
          "Comment": "",
          "Code": "function speech(option) {\r\n    // allow code to run in Student Learning Space \r\n    var isCordova = (!!this.parent.cordova || !!window.cordova);\r\n    if (isCordova) { // check if it is running on Android or iOS\r\n        parent.TTS.speak({ text: option, locale: 'ta-IN' });\r\n    } else {\r\n        var msg = new SpeechSynthesisUtterance(option);\r\n\r\n        // Set the text language to Tamil.\r\n        msg.lang = 'ta-IN';\r\n\r\n        // Debug\r\n        // console.log(`Voices #: ${speechSynthesis.getVoices().length}`)\r\n        // speechSynthesis.getVoices().forEach(voice => {\r\n        // console.log(voice.name, voice.lang)\r\n        // })\r\n\r\n        // Queue this utterance.\r\n        window.speechSynthesis.speak(msg);\r\n    }\r\n}\r\n"
        },
        {
          "Name": "vyspeedchange",
          "Active": "true",
          "Internal": "false",
          "Type": "LIBRARY_EDITOR",
          "Comment": "",
          "Code": "\nfunction vyspeedchange () {\n  for (var counter=0; counter<n  ; counter++) {\n  vx[counter] = Math.max(Math.random(),0.5);\n}\n}"
        },
        {
          "Name": "setResponsiveFontSize",
          "Active": "true",
          "Internal": "false",
          "Type": "LIBRARY_EDITOR",
          "Comment": "",
          "Code": "function setResponsiveFontSize() {\n    // Get the viewport dimensions\n    var viewportWidth = window.innerWidth || document.documentElement.clientWidth;\n    var viewportHeight = window.innerHeight || document.documentElement.clientHeight;\n    var percent = 0.03\n    // Calculate the font size based on viewport width or height\n    var fontSize = Math.min(viewportWidth * percent, viewportHeight * percent); // Adjust the multiplier as needed\n\n    // Set the font size\n    font = \"normal normal \" + fontSize + \"px\"; // You can use px or other units as needed\n\n    // Apply the font size to your elements\n    // For example, you can apply it to a specific element with a class\n    //document.getElementById(\"yourElementId\").style.font = font;\n}"
        }
      ]
    },
    "elements": {
      "list": [
        {
          "Classname": "org.colos.ejss.model_elements.numerics.NumericJavascriptElement",
          "Name": "numericJS"
        }
      ]
    }
  },
  "view": {
    "Tree": [
      {
        "Name": "singlePlotPanel",
        "Type": "Panel",
        "Expanded": "true",
        "Properties": [],
        "Children": [
          {
            "Name": "title",
            "Type": "Label",
            "Properties": [
              {
                "name": "Text",
                "value": "%title%"
              },
              {
                "name": "Font",
                "value": "%font%"
              }
            ]
          },
          {
            "Name": "executionPanel",
            "Type": "Panel",
            "Expanded": "true",
            "Properties": [
              {
                "name": "Font",
                "value": "%font%"
              },
              {
                "name": "Display",
                "value": "\"inline-block\""
              }
            ],
            "Children": [
              {
                "Name": "runPauseButton",
                "Type": "TwoStateButton",
                "Properties": [
                  {
                    "name": "OffClick",
                    "value": "%_pause%"
                  },
                  {
                    "name": "TextOn",
                    "value": "\"\u0bb5\u0bbf\u0bb3\u0bc8\u0baf\u0bbe\u0b9f\u0bc1\u25b6\""
                  },
                  {
                    "name": "State",
                    "value": "_isPaused"
                  },
                  {
                    "name": "Tooltip",
                    "value": "\"Play/Pause\""
                  },
                  {
                    "name": "TextOff",
                    "value": "\"\u0ba8\u0bbf\u0bb1\u0bc1\u0ba4\u0bcd\u0ba4\u0bc1\u275a\u275a\""
                  },
                  {
                    "name": "OnClick",
                    "value": "_play();\n//speech(\"\u73a9\"); \n"
                  }
                ]
              },
              {
                "Name": "stepButton",
                "Type": "Button",
                "Properties": [
                  {
                    "name": "Tooltip",
                    "value": "\"Step\""
                  },
                  {
                    "name": "Text",
                    "value": "\"|\u25ba\""
                  },
                  {
                    "name": "OnClick",
                    "value": "%_step%"
                  }
                ]
              },
              {
                "Name": "initButton",
                "Type": "Button",
                "Properties": [
                  {
                    "name": "Tooltip",
                    "value": "\"Initialize\""
                  },
                  {
                    "name": "OnClick",
                    "value": "%_initialize%"
                  },
                  {
                    "name": "Display",
                    "value": "\"none\""
                  }
                ]
              },
              {
                "Name": "resetButton",
                "Type": "Button",
                "Properties": [
                  {
                    "name": "Tooltip",
                    "value": "\"Reset\""
                  },
                  {
                    "name": "Text",
                    "value": "\"\u0bae\u0bc0\u0ba3\u0bcd\u0b9f\u0bc1\u0bae\u0bcd \u0bb5\u0bbf\u0bb3\u0bc8\u0baf\u0bbe\u0b9f\u0bc1\u21bb\""
                  },
                  {
                    "name": "OnClick",
                    "value": "%_reset%"
                  }
                ]
              }
            ]
          },
          {
            "Name": "plottingPanel",
            "Type": "PlottingPanel",
            "Expanded": "true",
            "Properties": [
              {
                "name": "Gutters",
                "value": "[0,0,0,0]"
              },
              {
                "name": "XFixedTick",
                "value": "0"
              },
              {
                "name": "Enabled",
                "value": "true"
              },
              {
                "name": "MaximumY",
                "value": "6"
              },
              {
                "name": "MaximumX",
                "value": "3.5"
              },
              {
                "name": "YFixedTick",
                "value": "0"
              },
              {
                "name": "TRMessage",
                "value": "\"Total Score=\"+score+\"/\"+2*numberofrounds+\"\\n\"+log "
              },
              {
                "name": "YAutoTicks",
                "value": "false"
              },
              {
                "name": "GridYShow",
                "value": "true"
              },
              {
                "name": "MinimumX",
                "value": "-0.5"
              },
              {
                "name": "MinimumY",
                "value": "0"
              },
              {
                "name": "XTickStep",
                "value": "1"
              },
              {
                "name": "MarginY",
                "value": "20"
              },
              {
                "name": "XAutoTicks",
                "value": "false"
              },
              {
                "name": "Height",
                "value": "\"\"+window.innerHeight*0.9"
              },
              {
                "name": "GridXShow",
                "value": "true"
              },
              {
                "name": "Width",
                "value": "\"100%\""
              },
              {
                "name": "TLMessage",
                "value": "\"Score = \"+score"
              },
              {
                "name": "BRMessage",
                "value": "\"Not attempted = \"+notrynumber"
              }
            ],
            "Children": [
              {
                "Name": "background",
                "Type": "Image2D",
                "Properties": [
                  {
                    "name": "SizeX",
                    "value": "4"
                  },
                  {
                    "name": "X",
                    "value": "1.5"
                  },
                  {
                    "name": "ImageUrl",
                    "value": "\"./Unnamed3/Garden2.jpg\""
                  },
                  {
                    "name": "Y",
                    "value": "2.5"
                  },
                  {
                    "name": "SizeY",
                    "value": "ymax*(1.2+0.2)"
                  }
                ]
              },
              {
                "Name": "imageSet",
                "Type": "ImageSet2D",
                "Properties": [
                  {
                    "name": "NumberOfElements",
                    "value": "numberofoption"
                  },
                  {
                    "name": "SizeX",
                    "value": "200"
                  },
                  {
                    "name": "X",
                    "value": "x"
                  },
                  {
                    "name": "Y",
                    "value": "y"
                  },
                  {
                    "name": "ImageUrl",
                    "value": "\"./Unnamed3/Picture3.png\""
                  },
                  {
                    "name": "SizeY",
                    "value": "90"
                  },
                  {
                    "name": "PixelSize",
                    "value": "true"
                  }
                ]
              },
              {
                "Name": "group",
                "Type": "Group2D",
                "Expanded": "true",
                "Properties": [],
                "Children": [
                  {
                    "Name": "image",
                    "Type": "Image2D",
                    "Properties": [
                      {
                        "name": "Sensitivity",
                        "value": "0"
                      },
                      {
                        "name": "SizeX",
                        "value": "160"
                      },
                      {
                        "name": "X",
                        "value": "xc"
                      },
                      {
                        "name": "ImageUrl",
                        "value": "\"./Unnamed3/Picture2.png\""
                      },
                      {
                        "name": "Y",
                        "value": "yc"
                      },
                      {
                        "name": "SizeY",
                        "value": "240"
                      },
                      {
                        "name": "PixelSize",
                        "value": "true"
                      },
                      {
                        "name": "EnabledPosition",
                        "value": "\"ENABLED_ANY\""
                      }
                    ]
                  },
                  {
                    "Name": "textcatch",
                    "Type": "Text2D",
                    "Properties": [
                      {
                        "name": "FillColor",
                        "value": "\"Black\""
                      },
                      {
                        "name": "RelativePosition",
                        "value": "\"WEST\""
                      },
                      {
                        "name": "X",
                        "value": "xc-0.2"
                      },
                      {
                        "name": "Y",
                        "value": "yc-0.2"
                      },
                      {
                        "name": "Text",
                        "value": "%textcatch%"
                      },
                      {
                        "name": "Font",
                        "value": "\"normal bold 30px \\\"Comic Sans MS\\\", cursive, sans-serif\""
                      }
                    ]
                  }
                ]
              },
              {
                "Name": "answerstringarray",
                "Type": "TextSet2D",
                "Properties": [
                  {
                    "name": "NumberOfElements",
                    "value": "n"
                  },
                  {
                    "name": "FillColor",
                    "value": "\"Black\""
                  },
                  {
                    "name": "RelativePosition",
                    "value": "\"CENTERED\""
                  },
                  {
                    "name": "X",
                    "value": "x"
                  },
                  {
                    "name": "Y",
                    "value": "y"
                  },
                  {
                    "name": "Text",
                    "value": "%textanswer%"
                  },
                  {
                    "name": "OnPress",
                    "value": "speech(textanswer[vocabaudio]); "
                  },
                  {
                    "name": "Visibility",
                    "value": "true"
                  },
                  {
                    "name": "EnabledPosition",
                    "value": "\"ENABLED_NO_MOVE\""
                  },
                  {
                    "name": "Font",
                    "value": "\"normal bold 28px \\\"Comic Sans MS\\\", cursive, sans-serif\""
                  },
                  {
                    "name": "ElementInteracted",
                    "value": "vocabaudio"
                  }
                ]
              }
            ]
          },
          {
            "Name": "audio",
            "Type": "Audio",
            "Properties": [
              {
                "name": "AudioUrl",
                "value": "\"./Unnamed3/CorrectAnswer.m4a\""
              },
              {
                "name": "Volume",
                "value": "0.5"
              }
            ]
          },
          {
            "Name": "audio1",
            "Type": "Audio",
            "Properties": [
              {
                "name": "AudioUrl",
                "value": "\"./Unnamed3/SMALL_CROWD_APPLAUSE-Yannick_Lemieux-1268806408.mp3\""
              }
            ]
          },
          {
            "Name": "correctAns1",
            "Type": "Audio",
            "Properties": [
              {
                "name": "AudioUrl",
                "value": "\"./Unnamed3/EJS1.m4a\""
              }
            ]
          },
          {
            "Name": "correctAns2",
            "Type": "Audio",
            "Properties": [
              {
                "name": "AudioUrl",
                "value": "\"./Unnamed3/EJS2.m4a\""
              }
            ]
          },
          {
            "Name": "correctAns3",
            "Type": "Audio",
            "Properties": [
              {
                "name": "AudioUrl",
                "value": "\"./Unnamed3/EJS3.m4a\""
              }
            ]
          },
          {
            "Name": "correctAns4",
            "Type": "Audio",
            "Properties": [
              {
                "name": "AudioUrl",
                "value": "\"./Unnamed3/EJS4.m4a\""
              }
            ]
          }
        ]
      }
    ],
    "RootProperties": []
  },
  "metadata": {
    "APP": "WebEJS",
    "CreatedWith": "WebEJS : the web version of Easy JavaScript Simulations",
    "MoreInfo": "1.0",
    "version": "https://t.um.es/webejs"
  }
}