diff --git a/docs/_library/sat_pruning.md b/docs/_library/sat_pruning.md new file mode 100644 index 0000000..f8e4a3f --- /dev/null +++ b/docs/_library/sat_pruning.md @@ -0,0 +1,12 @@ +--- +layout: experiment +name: "sat_pruning" +maintainer: "@terraregina" +github: "https://github.com/expfactory-experiments/sat_pruning" +preview: "https://expfactory-experiments.github.io/sat_pruning" +tags: +- test +- jspsych +- experiment +--- +Space Adventure Task - Uncertain Planet: a probabilistic sequential decision-making task to test the influence of planning costs on planning depth. diff --git a/sat_pruning/LICENSE b/sat_pruning/LICENSE new file mode 100644 index 0000000..4dd60fd --- /dev/null +++ b/sat_pruning/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2023 terraregina + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/sat_pruning/README.md b/sat_pruning/README.md new file mode 100644 index 0000000..125d5dd --- /dev/null +++ b/sat_pruning/README.md @@ -0,0 +1 @@ +# sat_pruning \ No newline at end of file diff --git a/sat_pruning/config.json b/sat_pruning/config.json new file mode 100644 index 0000000..621ba6e --- /dev/null +++ b/sat_pruning/config.json @@ -0,0 +1,28 @@ +{ + "name": "Space Adventure Task - Uncertain Planet", + "template":"javascript", + "exp_id": "SAT_UP", + "url":"none yet", + "contributors": [ + "Sia Ivova Hranova; sia.hranova@tu-dresden.de", + "Lorenz Goenner; lorenz.goenner@tu-dresden.de", + "Sophia-Helen Sass; sophia-helen.sass@tu-dresden.de", + "Michael N. Smolka; michael.smolka@tu-dresden.de" + ], + "run": [ + "js/jquery-3.5.1.min.js", + "js/experiment.js", + "js/parameters.js", + "style.css" + ], + "time":60, + "reference": ["not published yet (April 2025)"], + "publish":"False", + "notes": "Language: English", + "description": "a probabilistic sequential decision-making task to test the influence of planning costs on planning depth", + "instructions": "follow instructions on screen" +} + + + + diff --git a/sat_pruning/config_task.json b/sat_pruning/config_task.json new file mode 100644 index 0000000..5e0caa0 --- /dev/null +++ b/sat_pruning/config_task.json @@ -0,0 +1 @@ +config='[{ "Planet_Feedback": [ [ 2, 5, 2, 4, 1, 1 ], [ 3, 2, 5, 2, 5, 3 ] ], "Practise": [ 3, 3, 3, 3, 3, 3 ], "Rew_Planets": [ 1, 2, 3, 4, 5 ], "actionCost": [ 0, 0 ], "conditionsExp": { "startsExp": [ 3, 4, 4, 3, 3, 5, 4, 1, 6, 2, 3, 4, 5, 2, 1, 2, 4, 3, 2, 6, 1, 6, 5, 1, 5, 1, 5, 5, 1, 3, 1, 1, 5, 3, 5, 4, 3, 6, 3, 6, 6, 3, 6, 1, 3, 2, 3, 3, 4, 1, 1, 3, 1, 2, 4, 5, 4, 6, 5, 6, 4, 1, 1, 3, 4, 2, 1, 3, 1, 1, 6, 6, 5, 5, 4, 2, 2, 2, 2, 6, 1, 6, 1, 3, 2, 6, 5, 4, 6, 4, 3, 2, 3, 2, 5, 3, 6, 2, 2, 5, 3, 2, 6, 2, 2, 6, 6, 1, 3, 6, 5, 5, 6, 1, 6, 6, 4, 1, 1, 2, 4, 6, 5, 1, 3, 1, 3, 5, 5, 3, 2, 4, 4, 2, 2, 4, 5, 3, 5, 4, 6, 6, 4, 4 ], "uncertain_planet": [ 4, 6, 6, 4, 1, 3, 1, 3, 1, 3, 5, 6, 4, 4, 5, 6, 5, 5, 3, 3, 6, 3, 1, 4, 1, 5, 6, 1, 3, 1, 5, 2, 1, 2, 1, 6, 4, 4, 4, 4, 2, 4, 2, 3, 5, 1, 2, 1, 6, 3, 6, 1, 5, 4, 2, 2, 5, 5, 6, 3, 6, 6, 3, 4, 3, 5, 3, 5, 3, 4, 2, 4, 3, 1, 1, 6, 5, 5, 4, 1, 2, 2, 3, 6, 1, 1, 6, 3, 4, 6, 1, 4, 2, 3, 2, 4, 5, 5, 1, 1, 5, 5, 3, 4, 3, 1, 2, 6, 2, 4, 3, 2, 1, 3, 1, 3, 6, 4, 3, 5, 1, 2, 3, 3, 5, 4, 4, 1, 6, 1, 1, 1, 6, 3, 6, 5, 6, 2, 4, 5, 2, 1, 1, 3 ], "condition": [ 1, 0, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1, 1, 1, 0, 0, 1, 1, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0 ], "uncertain_planet_in_optimal_seq_PD3": [ 1, 0, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1, 1, 1, 0, 0, 1, 1, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0 ], "planetsExp": [ [ 5, 1, 3, 5, 1, 2 ], [ 4, 1, 4, 1, 2, 1 ], [ 4, 3, 5, 4, 1, 4 ], [ 1, 2, 5, 4, 1, 5 ], [ 5, 4, 2, 1, 3, 2 ], [ 1, 3, 3, 5, 5, 5 ], [ 2, 5, 2, 4, 1, 3 ], [ 4, 3, 4, 3, 5, 1 ], [ 4, 4, 1, 4, 2, 5 ], [ 3, 4, 1, 4, 5, 5 ], [ 1, 5, 2, 5, 2, 2 ], [ 4, 5, 1, 5, 1, 4 ], [ 3, 2, 4, 5, 2, 5 ], [ 3, 5, 4, 1, 4, 4 ], [ 5, 4, 1, 5, 2, 4 ], [ 4, 1, 5, 5, 1, 5 ], [ 3, 1, 4, 3, 4, 4 ], [ 5, 4, 1, 2, 5, 1 ], [ 3, 4, 2, 4, 5, 2 ], [ 4, 5, 2, 5, 1, 2 ], [ 3, 5, 3, 2, 5, 1 ], [ 5, 3, 1, 4, 1, 4 ], [ 5, 4, 5, 1, 5, 1 ], [ 3, 5, 5, 2, 4, 4 ], [ 5, 5, 4, 1, 3, 3 ], [ 2, 3, 1, 5, 4, 2 ], [ 3, 4, 2, 5, 2, 2 ], [ 1, 5, 3, 4, 3, 4 ], [ 3, 1, 5, 4, 3, 4 ], [ 3, 5, 5, 1, 3, 5 ], [ 2, 3, 5, 4, 4, 5 ], [ 3, 4, 4, 4, 5, 1 ], [ 5, 2, 4, 2, 1, 5 ], [ 5, 5, 1, 3, 4, 2 ], [ 5, 5, 1, 5, 1, 2 ], [ 1, 5, 2, 3, 5, 3 ], [ 1, 5, 3, 5, 1, 5 ], [ 3, 5, 2, 4, 5, 1 ], [ 5, 3, 2, 1, 4, 4 ], [ 2, 1, 5, 1, 3, 1 ], [ 1, 5, 2, 5, 2, 4 ], [ 3, 2, 3, 4, 2, 4 ], [ 2, 4, 3, 4, 5, 1 ], [ 5, 3, 4, 2, 4, 3 ], [ 3, 1, 2, 3, 2, 4 ], [ 1, 3, 4, 5, 3, 5 ], [ 4, 2, 1, 3, 4, 1 ], [ 1, 4, 4, 4, 1, 3 ], [ 2, 2, 4, 5, 4, 5 ], [ 5, 1, 4, 3, 5, 3 ], [ 2, 4, 4, 3, 4, 2 ], [ 5, 1, 5, 3, 3, 1 ], [ 5, 1, 3, 3, 5, 4 ], [ 5, 4, 1, 5, 3, 1 ], [ 4, 4, 2, 4, 3, 1 ], [ 1, 5, 1, 5, 4, 3 ], [ 5, 5, 1, 1, 4, 4 ], [ 4, 5, 1, 3, 1, 2 ], [ 3, 2, 5, 2, 5, 3 ], [ 1, 5, 5, 1, 3, 2 ], [ 3, 5, 4, 2, 1, 4 ], [ 3, 4, 4, 1, 4, 2 ], [ 3, 1, 4, 4, 5, 1 ], [ 4, 2, 1, 4, 3, 5 ], [ 2, 5, 3, 5, 3, 1 ], [ 1, 4, 2, 4, 3, 5 ], [ 5, 4, 5, 1, 4, 3 ], [ 2, 5, 5, 5, 1, 2 ], [ 4, 2, 3, 5, 3, 1 ], [ 2, 5, 1, 5, 3, 4 ], [ 1, 5, 4, 3, 5, 1 ], [ 2, 5, 1, 5, 4, 3 ], [ 1, 4, 3, 5, 3, 2 ], [ 3, 4, 3, 5, 4, 1 ], [ 5, 1, 5, 1, 3, 1 ], [ 2, 5, 1, 3, 3, 5 ], [ 4, 2, 1, 1, 5, 5 ], [ 2, 5, 3, 4, 1, 3 ], [ 1, 5, 5, 5, 1, 5 ], [ 2, 5, 1, 5, 1, 3 ], [ 2, 5, 2, 5, 4, 1 ], [ 1, 3, 2, 5, 2, 5 ], [ 4, 4, 5, 1, 4, 1 ], [ 5, 2, 4, 5, 4, 1 ], [ 4, 1, 4, 1, 3, 4 ], [ 1, 3, 3, 3, 2, 4 ], [ 1, 4, 1, 4, 5, 5 ], [ 3, 4, 2, 5, 4, 1 ], [ 4, 3, 4, 1, 5, 1 ], [ 2, 4, 1, 4, 3, 4 ], [ 4, 3, 2, 4, 4, 1 ], [ 2, 3, 5, 5, 1, 3 ], [ 5, 4, 5, 3, 3, 3 ], [ 3, 3, 2, 3, 5, 5 ], [ 1, 4, 2, 5, 2, 4 ], [ 4, 3, 2, 4, 1, 4 ], [ 5, 5, 2, 3, 2, 2 ], [ 1, 2, 3, 4, 1, 5 ], [ 1, 3, 5, 4, 2, 5 ], [ 5, 3, 4, 3, 3, 4 ], [ 5, 3, 5, 3, 1, 1 ], [ 5, 3, 4, 1, 5, 2 ], [ 1, 1, 3, 4, 5, 4 ], [ 1, 3, 5, 5, 1, 4 ], [ 5, 1, 3, 2, 5, 4 ], [ 5, 5, 1, 2, 5, 1 ], [ 2, 5, 5, 5, 1, 2 ], [ 1, 3, 5, 1, 4, 3 ], [ 3, 4, 3, 4, 5, 1 ], [ 2, 5, 5, 5, 1, 3 ], [ 3, 4, 1, 4, 3, 1 ], [ 1, 4, 4, 5, 3, 4 ], [ 5, 1, 5, 1, 5, 5 ], [ 1, 5, 5, 3, 5, 4 ], [ 3, 3, 4, 5, 2, 5 ], [ 3, 1, 5, 1, 5, 2 ], [ 5, 2, 1, 4, 1, 5 ], [ 2, 2, 1, 2, 5, 4 ], [ 4, 5, 3, 1, 5, 3 ], [ 5, 2, 3, 1, 5, 2 ], [ 2, 5, 5, 3, 3, 1 ], [ 3, 3, 4, 4, 1, 2 ], [ 3, 4, 4, 5, 3, 5 ], [ 5, 1, 5, 3, 2, 5 ], [ 5, 1, 3, 4, 4, 1 ], [ 2, 2, 3, 5, 3, 4 ], [ 1, 5, 2, 1, 1, 5 ], [ 3, 1, 5, 1, 2, 4 ], [ 1, 1, 5, 1, 4, 3 ], [ 4, 5, 2, 5, 1, 2 ], [ 1, 2, 1, 2, 3, 5 ], [ 5, 1, 5, 2, 4, 2 ], [ 1, 4, 2, 4, 5, 5 ], [ 4, 1, 3, 4, 5, 2 ], [ 1, 5, 5, 5, 1, 5 ], [ 1, 3, 4, 2, 4, 5 ], [ 3, 4, 4, 2, 3, 2 ], [ 4, 3, 3, 4, 4, 1 ], [ 4, 2, 3, 1, 2, 5 ], [ 1, 3, 4, 5, 2, 2 ], [ 5, 1, 5, 1, 3, 1 ], [ 5, 2, 4, 2, 5, 5 ], [ 5, 2, 5, 1, 4, 1 ], [ 5, 3, 1, 1, 1, 3 ] ], "tm": [ [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0.25, 0.5, 0.25, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0.25, 0.5, 0.25, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0.25, 0.5, 0.25, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0.25, 0.5, 0.25, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0.25, 0.5, 0.25, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0.25, 0.5, 0.25, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0.25, 0.5, 0.25, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0.25, 0.5, 0.25, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0.25, 0.5, 0.25, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0.25, 0.5, 0.25, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0.25, 0.5, 0.25, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0.25, 0.5, 0.25, 0, 0, 0 ] ] ], [ [ [ 0.25, 0.5, 0.25, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0.25, 0.5, 0.25, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0.25, 0.5, 0.25, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0.25, 0.5, 0.25, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0.25, 0.5, 0.25, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0.25, 0.5, 0.25, 0, 0, 0 ] ] ], [ [ [ 0.25, 0.5, 0.25, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0.25, 0.5, 0.25, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0.25, 0.5, 0.25, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0.25, 0.5, 0.25, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0.25, 0.5, 0.25, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0.25, 0.5, 0.25, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0.25, 0.5, 0.25, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0.25, 0.5, 0.25, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0.25, 0.5, 0.25, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0.25, 0.5, 0.25, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0.25, 0.5, 0.25, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0.25, 0.5, 0.25, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0.25, 0.5, 0.25, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0.25, 0.5, 0.25, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0.25, 0, 0, 0, 0.25, 0.5 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0.25, 0.5, 0.25, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0.25, 0.5, 0.25, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0.25, 0.5, 0.25, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0.25, 0.5, 0.25 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0.25, 0.5, 0.25, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0.25, 0.5, 0.25, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ] ], [ [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 0.5, 0.25, 0, 0, 0, 0.25 ], [ 0, 1, 0, 0, 0, 0 ] ] ], [ [ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ] ], [ [ 0, 0.25, 0.5, 0.25, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ], [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ] ] ] ] }, "conditionsFeedback": { "notrials": [ 3, 3 ], "noise": [ "low", "low", "low", "low" ], "starts": [ 3, 4 ] }, "planetRewards": [ -20, -10, 0, 10, 20 ] }]' \ No newline at end of file diff --git a/sat_pruning/index.html b/sat_pruning/index.html new file mode 100644 index 0000000..7a5a640 --- /dev/null +++ b/sat_pruning/index.html @@ -0,0 +1,362 @@ + + + + + + Space Adventure Planning Depth New + + + + + + + + + +
+ +
+

Welcome to the Space Adventure game!

+

+

Today you will have the opportunity to take part in a journey through space.

+

On your journey, you will be controlling a spaceship and visiting different planetary systems

+

with the goal of collecting as many points as possible.


+

The more points you collect, the more money you will get for your participation!

+
+

Before you start, the following tutorial will teach you everything you need to play the Space Adventure game,

+

such as how to move the spaceship, how the planetary systems work and other game rules.

+
+

Please press the right arrow key to continue or the left arrow key to go back one page.

+ + +
+ +
+

In each game trial you will visit a new planetary system.



+

A planetary system will always consist of 6 planets

+

and an example is shown on the next instructions page.




+

Please press the right arrow key to continue or the left arrow key to go back one page.

+
+ +
+

You will be able to guide the yellow spaceship shown below to different planets.

+

Please press the right arrow key to continue or the left arrow key to go back one page.

+
+ +
+

There are different types of planets (indicated by colour).


+

Some planet types will give you points and others will make you lose points when you land on them (as shown below).


+
+ +
+

Your goal is to collect as many points as possible.


+ +

A blue bar at the top of the screen will show you the amount of points you have already gathered to help you keep track.

+

You can see the points bar on the next intruction screen.



+ +

The bar will turn red if you are running low on points

+

and the game will terminate if you run out of points completely.



+ +

Please press the right arrow key to continue or the left arrow key to go back one page.

+ +
+ +
+

Please press the right arrow key to continue or the left arrow key to go back one page.

+
+ +
+

There are two ways in which you can travel to different planets.

+ +

You can either go one step in the clockwise direction by pressing the M-key on your keyboard

+

or you can go two steps in the clockwise direction (i.e. to a not directly adjacent planet) by pressing the X-key.

+
+
+ + +

Please press the right arrow key to continue or the left arrow key to go back one page.

+ +
+ + +
+ + +

To get used to this you will now get to practice moving the rocket one step in the clockwise direction (M-key).

+ +

Please try this command a few times by repeatedly pressing the M-key in the next instruction screen.

+ +

Please always press the M-key with your right index finger.



+ + +

The next instructions will show automatically when you have done this enough times.



+

Please press the right arrow key to continue or the left arrow key to go back one page.

+ +
+
+

-2

+
+ +
+

Please press the M-key.

+
+ + +
+
+ +
+

You will now also get to practice moving the rocket two steps in the clockwise direction (X-key)

+

Please try this command a few times by repeatedly pressing the X-key in the next instruction screen.

+ +

Please always press the X-key with your left index finger.



+ +

The next instructions will show automatically when you have done this enough times.



+

Please press the right arrow key to continue.

+
+ +
+

Please press the M-key.

+
+ +
+

Please press the X-key.

+
+ + + +
+

You just learned how to to navigate to different planets.


+

You will now learn that landing on a planet can sometimes be affected by cosmic conditions.


+

On most planets in a planetary system the landing conditions are ideal.

+

So, your spaceship will be able to land reliably on the target planet you are heading for.


+

However, in every planetary system there is also one planet that is surrounded by an asteroid storm.

+

You can always see clearly see which planet is affected. An example is shown on the next instruction screen.



+

Please press the right arrow to continue.

+ +
+ +
+

Landing on this planet is more difficult because of the asteroid storm.

+

Therefore, the rocket might sometimes miss the target planet

+

and instead land on one of the two directly adjacent planets.


+

So, if you try and go to a planet with asteroids, please remember

+

that you will not always reach the location you planned to go to.



+

Please press the right arrow key to continue or the left arrow key to go back one page.

+
+ +
+

Here you see an example of where the rocket might land if you go forward

+

one step (picture to the left) or two steps (picture to the right) in order to reach a planet with asteroids.


+

The solid arrows show the target planet and

+

the dashed arrows show you where the rocket might land if the target is missed.

+
+ + +
+

Please press the right arrow key to continue or the left arrow key to go back one page.

+
+ + +
+

Target missed.

+
+ + +
+

To give you a feel for how reliable landing in an asteroid storm is, you can try this out a few times in the next instruction screen,

+

where you have to repeatedly go forward one or two step in order to reach the planet with the asteroids.



+ +

Be aware that the chance of missing the target planet in an asteroid storm does not change throughout the game.

+ +
+ +

Please press the right arrow key to start the practice or the left arrow key to go back one page.

+ +
+ + +
+

One last thing you need to know:

+

In each new planetary system you can travel to 3 planets and you have to try to collect as much points as possible on the journey.

+

The number of green squares in the centre of the screen shows you how many planets you can still visit before moving to a new planetary system.

+ +
+ +
+ +

Please press the right arrow key to continue or the left arrow key to go back one page.

+
+ +
+

To summarize:


+

Your task is to collect as many points as possible by travelling from planet to planet.

+

You can travel either one (M-key) or two steps (X-key) in the clockwise direction.

+

Different planet types can bring or make you lose points.

+
+ +
+

The bar at the top of the screen shows you how many points you currently have.

+

In each planetary system, there is one planet that is surrounded by an asteroid storm

+

which makes landing on that planet more difficult.

+

This can sometimes cause you to land on one of its neighbouring planets instead of the target planet.


+ +

Please press the right arrow key to continue or the left arrow key to go back one page.

+
+ +
+

One important tip:

+

It will help you a lot in the task if you plan all 3 of your travel steps in advance.

+

Example: Imagine you start in the planet constellation given below.

+ +
+

If you plan only two moves in advance, you would move forward one step to the +20 planet and then

+

move two steps forward to the +10 planet. However, then you would be forced to travel to one of the red planets (-20) and in total earn only 10 points.


+

Please press the right arrow key to continue or the left arrow key to go back one page.

+
+ +
+ + +

So, in this planetary system it would have been better to lose a smaller amount of points first

+

by going one step to the -10 planet and then travel to the +10 planet.

+ + +

In total you would have gained 20 points by doing this.

+
+ +
+

You will now practice a whole game trial.

+

Please plan your 3 travel steps in advance so that you get as many points as possible but

+

do not enter new travelling commands while the rocket is still moving.

+

The rocket has to land first before you can input your next action.


+

You can always take as much time as you need to plan your journey.


+

There is no asteroid storm in these sample runs for simplicity.

+

Don't forget to press the M-key with your right index finger and the X-key with your left index finger.

+

+

Please press the right arrow key to continue or the left arrow key to go back one page.

+
+ +
+

Perfect, you found the best route!

+ +
+ + +
+

There is still a better route. Please try again.

+ +
+ + +
+

That was still not the best route. Please try one more time!

+
+ +
+

That was still not exactly right..


+

Please press the right arrow key to see the best route.

+ +
+ +
+

The best route is:

+
+
+

Congratulations! You have new learned everything you need to know for your Space Adventure!

+ +

Please press the right arrow key to continue.

+
+ + +
+

The Space Adventure game can now begin.

+

Press the right arrow key to start the real experiment.

+
+ +
+

Das Training Spiel ist zu Ende.

+

Ihre Training Treibstoffreserven sind aufgebraucht.



+

Ihr Weltraumabenteuer kann nun beginnen.




+

Drücken Sie die rechte Pfeiltaste, um fortzufahren.

+ +
+ +
+

You are moving to a new planetary system...

+
+ + +
+

Please take a bit of time to rest in case you feel tired....

+
+ +

Press the right arrow key to continue the experiment.

+ +
+ +
+

The experiment is now over.

+

Thank you for your participation.

+

+

Please press the right arrow key to finish the experiment.

+
+ +
+
+
+ +
+
+
+
+
+
+
+
+ +
+
+
+
+
+ +
+
+
+
+
+
+ +
+

The game is over.

+

Unfortunately you ran out of fuel.

+

Thank you for your particpation!

+

+

Please press the right-arrow key to finish the experiment.

+
+
+ +
+ + + + + + + + + + + + +
+ + + diff --git a/sat_pruning/js/experiment.js b/sat_pruning/js/experiment.js new file mode 100644 index 0000000..56335b1 --- /dev/null +++ b/sat_pruning/js/experiment.js @@ -0,0 +1,1488 @@ +////////////////////////////////////////////////////////// +//////// FUNCTIONS //////////// + +function pushDataMain(){ + mainData.responses.RT = mainRTarray; + mainData.responses.actions = mainKeysArray; + + mainData.states = mainStateArray; + mainData.points = mainPointsArray; + mainData.planetConfigurations = mainPlanets; + mainData.rocketStart = mainRocketStart; + mainData.NoisyPlanet = mainNoisyPlanet; + mainData.condition = condition; + mainData.uncertainPlanetInOptimalSeq = uncertainPlanetInOptimalSeq; + mainData.stateTransitionMatrix = stateTransitionMatrix; + mainData.actinCost = actionCost; + mainData.foundOptimalSequence = optimalFoundLog; + mainData.mainPlanetMissedArray = mainPlanetMissedArray + +}; + +/////////////////////////////// +// INITIALIZATION FUNCTIONS + + +function assignPlanet(arrayRow){ + $('#planets .planet').each(function(i) { + pl = arrayRow[i]; + $(this).attr('data-planet-img',pl); + pl = (planetPoints[pl-1] > 0) ? "+"+planetPoints[pl-1]:planetPoints[pl-1]; + $(this).attr('data-points',pl); + }); +}; + +function initializeSquares(numSquares){ + if (numSquares == 2) { + squaresWrapper.attr('data-num-squares','2'); + } else{ + squaresWrapper.attr('data-num-squares','3'); + } +}; + +// needs to happen only once, change initialize screen function; +function initializePointsBar(){ + updatePointsBar(); +}; + +function initializeRocket(rocketPos) { + rocket.removeAttr('style'); + rocket.attr('data-pos',rocketPos-1); +}; + +// function initializeAsteroids(noise){ +// if (noise == 'high'){ +// $('#game-container').addClass('asteroids'); +// } else if (noise == 'low'){ +// $('#game-container').removeClass('asteroids'); +// } +// } + +function initializeGameScreen(){ + + if(isIntroduction){ + args = [introPlanets[trial],introRocketStart[trial]]; + // } else if (isTraining){ + // args = [trainPlanets[trial], trainRocketStart[trial]]; + // asteroidTrial = [5,10,15]; + } else if (isMain){ + args = [mainPlanets[trial], mainRocketStart[trial]]; + } + + planetsForMiniBlock = args[0]; + rocketPos = args[1]; + turnsForMiniblock = 3; + + turnsLeft = turnsForMiniblock; // only 3 actions possible + assignPlanet(planetsForMiniBlock); + initializeSquares(turnsForMiniblock); + if(trial == 0){ + initializePointsBar(); + } + initializeRocket(rocketPos); + + if(!isIntroduction){ + $('.showing-asteroids').removeClass('showing-asteroids') + $('#planet' + (mainNoisyPlanet[trial])).addClass('showing-asteroids') + } +}; + +// UPDATE FUNCTIONS + +function planetReward(newPos){ + if (isIntroduction){ + conf = introPlanets[trial]; + // } else if (isTraining) { conf = trainPlanets[trial]; + } else if (isMain) { + conf = mainPlanets[trial] + } + + reward = planetPoints[conf[newPos]-1]; + // console.log('current reward: ', reward) + return reward +}; + +function updatePoints(newPos){ + // points_gain = planetReward(newPos); + points += planetReward(newPos); + ps.push(points) +}; +// rgb(227, 0, 28) +// rgb(0, 0, 255) + +function updatePointsBar() { + + fillingW = points/max_points*100; + fillingW = (fillingW > 100) ? 100: fillingW; // take care of overflow + $('#points-filling').width(fillingW + '%'); + if (fillingW <= 12.5){ + $('#red-points-filling').css({'opacity':1}) + } else if (fillingW > 12.5 && $('#red-points-filling').css('opacity') != 0){ + $('#red-points-filling').css({'opacity': 0}) + } +}; + + +function updateScore(newPos){ + updatePoints(newPos); + updatePointsBar(); +}; + + +// SHIP NAVIGATION FUNCTIONS + +function roundTo(x, n=10){ + return Math.round(x*(10**n))/10**n +}; + + +function getTargetPosition(action, targetArray){ + pos = parseInt(rocket.attr('data-pos')); // get current position of the rocket + newPos = targetArray[action][pos]; // get target index + return newPos +}; + + +function executeAction(key, enforcedMissing = false, targetInfos = NaN,cb=NaN){ + + /* + FUNCTION: retrieves rocket target information dependent on participant chosen action + and initiations rocket movement animation + FUNCTION ARGUMENTS: + key: participant key input ("move" or "jump" key) + */ + + if (!rocket.hasClass('animating')){ // do not initiatate animations if something is already animating + + action = +(key == jump) // codify chosen action as index array + + newPosRocket = getTargetPosition(action, targets) // retrieve planet target if rocket will NOT miss the correct target + planetHasAsteroids = $('#planet' + (newPosRocket + 1)).hasClass('showing-asteroids') // check if target planet is one with increased uncertainty + + if (planetHasAsteroids){ + + if (enforcedMissing){ + willMissTarget = targetInfos[0] // decide if rocket will miss the target + missTargets = targetInfos[1] + } else { + willMissTarget = Math.random() > 0.5; // decide if rocket will miss the target + missTargets = Math.random() <= 0.5 ? missRight : missLeft; // choose random neighbour of target to land on + } + + } else { + + willMissTarget = false // if the planet is not one with increased uncertainty the rocket will never miss the target + } + + if (isMain){ + + misses.push(willMissTarget) + + } + + if(willMissTarget){ // if rocket will miss the tharget planet + + newPosRocket = [[[newPosRocket,350]],willMissTarget]; // record planet position (where rocket will land if it didn't miss), animation speed and whether target will be missed + newPosRocket[0][1] = [getTargetPosition(action, missTargets),100] // record planet position (where rocket will land if it does miss target) and animation speed + + } else { // if rocket will NOT miss the target planet + // NOWDEBUG + newPosRocket = [[[newPosRocket,500]],willMissTarget]; // record planet position (where rocket will land if it didn't miss), animation speed and whether target will be missed + // newPosRocket = [[[newPosRocket,20]],willMissTarget]; // record planet position (where rocket will land if it didn't miss), animation speed and whether target will be missed + } + } + + animateRocket(newPosRocket,cb); // initiate rocket animation + // if (isMain){ + turnsLeft--; // udpate counter for number of turns left + // } +}; + +// function executeIntroMove(key, prob){ +// if (key == jump && !rocket.hasClass('animating')){ + +// missProb = prob; +// newTarget = Math.random() <= 0.5; // choose random neighbour of target to land on +// newTarget = newTarget ? 2 : 3; + +// if (isLearningUncertaintyLow){ // if no asteroids present +// willMiss = missProb > lowLandProb; +// cb = lowUncertaintyCallback +// } else { +// willMiss = missProb > highLandProb; +// cb = highUncertaintyCallback +// }; + +// if (willMiss) { // if rocket misses jump target +// newPos = getTargetPosition(newTarget); +// missed = true; +// } else { +// newPos = getTargetPosition(1); +// }; +// newPos[3] = resetPos; +// // displayScore($('#score-jump')); +// animateRocket(newPos, cb); +// } +// }; + + +function revertAnimation(newPos){ + setTimeout(function(){ + $(gameStage).addClass('inactive'); + + setTimeout(function(){ + clearRocketStyle(newPos); + rocket.removeClass('inactive animating'); + $(gameStage).removeClass('inactive'); + + isReverting = false; + running = false; + },1000) + },500) +}; + + +function pointsColor(){ + rocketPos = rocket.attr('data-pos'); + rocketPos = parseInt(rocketPos) + 1; + + planetIdentity = $("#planet"+ rocketPos).attr('data-planet-img'); + + if (planetIdentity > 3){ + $('#planet' + rocketPos).addClass("good") + } else if (planetIdentity < 3){ + $('#planet' + rocketPos).addClass("bad") + } else { + $('#planet' + rocketPos).addClass("neutral") + } +}; + + +function animationEndFunction(posInfo, cb){ + + console.log('new rocket position ' + posInfo[0][0][0]) + animEnd = new Date(); //unnecessary? + rocket.removeClass('animating'); + rocket.attr('data-pos',posInfo[0][0][0]); + + console.log(points) + if(screen >= 21 || isMain){ + // if(screen >= 26 || isMain || isTraining){ + updateScore(parseInt(rocket.attr('data-pos'))); + pointsColor() + $('#planet'+(posInfo[0][0][0]+1)).addClass('showing-points'); + + } + + if (isMain){ + animationEndTime = new Date(); + // console.log('time elapsed2 is:' + (animationEndTime.getTime() - animStart.getTime())); + animationEnd.push(animationEndTime.getTime()); + // console.log('animationEnd: ' + animationEndTime.getTime()) + states.push(+rocket.attr('data-pos')+1); + + if (points <= 0){ + gameover = true; + gameOverResultsUpdate(); + setTimeout(function(){ + + // if (isTraining){ + // trainCallback(); + // } else { + mainCallback(); + // } + gameover = false; + }, 2000) + } + // console.log("t="+trial+', left: ' +turnsLeft+" animationEnd time: "+ animationEnd); + } + + if (typeof(cb) == 'function') { + if (posInfo.length == 3) { + cb(posInfo[2]); + } else { + cb(); + } + } +}; + + +function animateRocket(posInfo, cb) { + + /* + FUNCTION: Animates the movement of the rocket in response + to a participant inputting an action. + FUNCTION ARGUMENTS: + posInfo: [[correctTarget, missedTarget], miss] + correctTarget: array holding index of correct planet and + the animation speed to that target[planetIndex, animationSpeed] + missedTarget: array holding index of planet rocket would land to + if target is missed and the animation speed to the new target planet + miss: whether a miss will occur + + if a wiss will not occur posInfo = [[correctTarget], miss]*/ + + rocket.addClass('animating'); // stop accepting participant input since choice animation in progress + animStart = new Date(); // record beginning of animation + + if(screen >= 21 || isMain){ // remove point display formatting from previous action + $('.showing-points').removeClass('showing-points'); + $('.good, .bad, .neutral').removeClass('good bad neutral') + + } + + miss = posInfo[1] // record whether a miss occured + discounter = miss ? 0.66 : 1; // indicated how far along intended path rocket will travel + + positionsAndDelays = posInfo[0] // record correct and missed target index and animation speed information + + currentTopRaw = parseFloat(rocket.css('top').split('px')[0]) // calculate current y position of rocket in px + currentLeftRaw = parseFloat(rocket.css('left').split('px')[0]) // calculate current x position of rocket in px + + currentTopPercent = Math.round((currentTopRaw/window.innerHeight)*100) // calculate current y position of rocket in percentage of viewport height + currentLeftPercent = Math.round(currentLeftRaw/window.innerWidth*100) // calculate current x position of rocket in percentage of viewport width + + newTargetTopPercent = positionInt[positionsAndDelays[0][0]][0] // retrieve new y position of rocket in percentage of viewport height + newTargetLeftPercent = positionInt[positionsAndDelays[0][0]][1] // retrieve new x position of rocket in percentage of viewport height + + adjustTop = currentTopPercent + (newTargetTopPercent - currentTopPercent)*discounter // calculate how much to move rocket in the y direction + adjustLeft = currentLeftPercent + (newTargetLeftPercent - currentLeftPercent)*discounter // calculate how much to move rocket in the x direction + + rocket.animate({ + top: adjustTop + '%', // x adjustment + left:adjustLeft + '%', // y adjustment + }, positionsAndDelays[0][1], // animation speed + + function(){ // on animation end + + if (positionsAndDelays.length == 2){ // if there is another target to animate to + + posInfo[0].shift(); // remove position information about previously animated target + posInfo[1] = false; // recode miss to false, since this is the final target position of the rocket + animateRocket(posInfo, cb); + // animate movement to new target planet + } else{ // if we just animated the movement to the final target + + animationEndFunction(posInfo, cb); // call the function that finishes participant action execution + } + } + ); +}; + + +function recordData(){ + if(trial !=-1){ + screenTransition = true; // doubled since used to initialize screen as well + mainKeysArray.push(keys); + states.unshift(mainRocketStart[trial]); + mainStateArray.push(states); + mainPointsArray.push(ps); + + rt.push(keyPress[0] - stimulusDisplay); + rt.push(keyPress[1] - stimulusDisplay); + rt.push(keyPress[2] - stimulusDisplay); + // rt.push(keyPress[1] - animationEnd[0]); + // console.log(keyPress, stimulusDisplay, animationEnd) + // rt.push(keyPress[2] - animationEnd[1]) + mainRTarray.push(rt); + mainPlanetMissedArray.push(misses); + + } + + rt = []; + stimulusDisplay = []; + keyPress = []; + animationEnd = []; + keys = []; + states = []; + ps = []; + misses = []; + +} + + +// CONTROL FLOW FUNCTIONS FOR INTRO PART + +function practiceMove(keycode){ + + playing = true; + + if(keycode==move){ + if(!rocket.hasClass('animating') && !wrongKey && !isEnding){ + + newPosRocket = getTargetPosition(0, targets) // retrieve planet target if rocket will NOT miss the correct target + newPosRocket = [[[newPosRocket,500]],false]; + animateRocket(newPosRocket, practiceMoveCallback) + practiceCounter++; + } + } else { + if (!rocket.hasClass('animating') && !isEnding && !wrongKey) { + wrongKey = true; + displayWrongKey('#wrong-key-clockwise', ['MOVE',move]); + } + } +}; + + +function practiceMoveCallback(){ +// NOWDEBUG +if (practiceCounter == 6) { +// if (practiceCounter == 1) { + isEnding = true; + setTimeout( function(){ + practiceCounter=0; + practiceJumpTotal = 0; + clearRocketStyle(0); + points = 1000; + initializePointsBar(); + screenSwitch(gameStage,'#screen-jump-1'); + screen--; + setTimeout(function (){ + screenSwitch('#screen-jump-1', '#screen-jump-2'); + isEnding = false; + playing = false; + // NOWDEBUG + },500) + // },100) + },1000) +} +}; + + +function practiceJump(keycode){ + playing = true + if(keycode==jump){ + isTransitioning = isReverting || isEnding; + if(!rocket.hasClass('animating') && $('#wrong-key-jump').hasClass('inactive') && !isTransitioning){ + if (practiceCounter < 5){ + resetPos = practiceCounter+1; + } else { + resetPos = practiceCounter-5; + } + practiceJumpTotal += 1; + newPosRocket = getTargetPosition(1, targets) // retrieve planet target if rocket will NOT miss the correct target + newPosRocket = [[[newPosRocket,500]],false, resetPos]; + animateRocket(newPosRocket, practiceJumpCallback); + practiceCounter++; + } + } else { + if (!rocket.hasClass('animating') && !isEnding && !wrongKey && !isReverting) { + wrongKey = true; + displayWrongKey('#wrong-key-jump', ['JUMP',jump]); + } + } +}; + + +function practiceJumpCallback(resetPos){ +// NOWDEBUG +if (practiceCounter == 6){ +// if (practiceCounter == 1){ + isEnding = true; + setTimeout( function(){ + isEnding = false; + playing = false; + clearRocketStyle(0); + screenSwitch(gameStage, '#jump-uncertainty-1'); + dispPattern = true; + setTimeout(function(){ + dispPattern = false; + //NOWDEBUG + },2000) + // },100) + points = 1000 + },1000) +} else { + isReverting = true; + setTimeout(function(){ + revertAnimation(resetPos); + },1000) +} +}; + +moveOrJump = [0 , 1 , 1 , 0 , 1 , 1 , 0 , 1 , 0 , 1 , 0 , 0 ] +learnUncertaintyMiss = [false , true , false , true , false , true , true , false , false , true , false , true ] +learnUncertaintyDirection = [NaN , missRight , NaN , missLeft , NaN , missLeft , missRight , NaN , NaN , missLeft , NaN , missRight] +asteroidPlanets = [NaN , 4 , 5 , 5 , 1 , 2 , 2 , 4 , 4 , 6 , 6 , 1 ] +rocketResetPositions = [1 , 2 , 3 , 4 , 5 , 0 , 1 , 2 , 3 , 4 , 5 , 0 ] + + +function learnUncertainty(){ + + playing = true; + action = moveOrJump[uncertaintyTotal] + + if (uncertaintyTotal==0){ + wrongKeyMessage = '#wrong-key-move'; + } + + if(keycode==actionKeys[action]){ + + if($(wrongKeyMessage).hasClass('inactive') && !running){ + + running = true; + willMiss = learnUncertaintyMiss[uncertaintyTotal]; + missDirection = learnUncertaintyDirection[uncertaintyTotal]; + cb = learnUncertaintyCallback; + executeAction(keycode, enforcedMiss=true, enforcedTarget = [willMiss, missDirection],cb=cb); + uncertaintyTotal++; + + } + + } else if (!running && !wrongKey){ + + wrongKey = true; + wrongKeyMessage = action == 0 ? '#wrong-key-move': '#wrong-key-jump' + displayWrongKey(wrongKeyMessage); + }; +}; + +function finishLearningUncertainty(){ + + $(gameStage).addClass('inactive'); + clearRocketStyle(0) + $('.showing-asteroids').removeClass('showing-asteroids') + $('#turns').removeClass('inactive'); + isLearningUncertainty = false; + screen++; + points = 1000 + uncertaintyTotal = 0; + uncertaintyCounter = 0; + running = false; + playing = false; + +} + +function learnUncertaintyCallback(){ + + // NOWDEBUG + if (uncertaintyTotal == 12){ + // if (uncertaintyTotal == 1){ + + if (willMissTarget){ + + setTimeout(function(){ + + $('#missed-target').removeClass('inactive'); + + setTimeout(function(){ + + $('#missed-target').addClass('inactive'); + finishLearningUncertainty(); + + },2000); + + },1000) + + } else { + + setTimeout(finishLearningUncertainty, 1000) + } + + + } else { + + resetPos = rocketResetPositions[uncertaintyTotal-1] + + if (willMissTarget){ + + setTimeout(function(){ + + $('#missed-target').removeClass('inactive'); + + setTimeout(function(){ + + $(gameStage).addClass('inactive') + $('#missed-target').addClass('inactive'); + $('.showing-asteroids').removeClass('showing-asteroids'); + $('#planet'+(asteroidPlanets[uncertaintyTotal])).addClass('showing-asteroids') + revertAnimation(resetPos); + missed = false; + + },2000); + + },1000) + + } else{ + + setTimeout(function(){ + + $(gameStage).addClass('inactive') + $('.showing-asteroids').removeClass('showing-asteroids'); + $('#planet'+(asteroidPlanets[uncertaintyTotal])).addClass('showing-asteroids') + revertAnimation(resetPos); + + },1000) + + } + + } +}; + + +////////// MAIN PLAYING MINIBLOCK FUNCTIONS ////////// +function playTurn(finishCallback) { + + allowedKey = (keycode == jump) || (keycode == move); + rocketMoving = rocket.hasClass('animating'); + + if (allowedKey && !rocketMoving && !screenTransition){ + + keyPress.push(keyPressTime.getTime()); + // console.log("t="+trial+', left: ' +turnsLeft+" keyPress time: "+ keyPress); + $('#square'+ turnsLeft).addClass('hideSquare'); + // displayScore(choosePoints()); + executeAction(keycode); + keys.push(keycode == move ? 1:2); + // ps.push(points); + // console.log('pushed points') + + if (turnsLeft==0) { + screenTransition = true; + setTimeout( function(){ + if(!gameover) { + $('#game-container').addClass('inactiveStrong'); + finishCallback(); + } + },1500); + } + } + +}; + + +function finishTurn(){ + + recordData(); + + $('#main-transition-text').removeClass('inactive'); + $('.hideSquare').removeClass('hideSquare'); + $('.showing-points').removeClass('showing-points'); + console.log(trial) + trial++; + initializeGameScreen(); + + setTimeout(function(){ + screenTransition = false; + $('#main-transition-text').addClass('inactive'); + $('#game-container').removeClass('inactiveStrong'); + stimulusDisplayTime = new Date(); + // console.log('stimulus disp time: ' + stimulusDisplayTime.getTime()) + stimulusDisplay.push(stimulusDisplayTime.getTime()); + // console.log("t="+trial+', left: ' +turnsLeft+" stimulusDisplay time: "+ stimulusDisplay); $(gameStage).removeClass('inactive'); + $(gameStage + ', #points-wrapper, #squares-wrapper').removeClass('inactive'); + + }, 1500); +}; + +////////// CALLBACKS FOR FINISHING TURN IN EACH STAGE AND OTHER PLAY-TURN RELATED FUNCTIONS +currentlyShowingRoute = false; +willShowRoute = false; +optimalCounter = 0 +transitionMessages = ['#not-optimal', '#not-optimal-2', '#not-optimal-3']; + +function displayRoute(){ + + if (keycode == 39){ + trial++; + if( !currentlyShowingRoute) { + currentlyShowingRoute = true; + $('#not-optimal-3').addClass('inactive') + initializeGameScreen(); + rocket.removeClass('animating'); + // trial--; + $('.showing-points, .good, .bad, .neutral').removeClass('showing-points good bad neutral'); + $('#squares-wrapper').addClass('inactive'); + $('#game-container').removeClass('inactiveStrong') + + setTimeout(function(){ + $('#optimal-route').removeClass('inactive') + currentMoves = moves[trial]; + setTimeout(function(){ + animateRouteDisplay(currentMoves) + },1500) + },500)} + } +} + + +function animateRouteDisplay(currentMoves){ + + if(currentMoves.length != 0) { + + if(!rocket.hasClass('animating')){ + + rocket.addClass('animating') + keycode = (currentMoves[0]) + + if (keycode == jump){ + newPosInd = getTargetPosition(1,targets); + } else if (keycode == move){ + newPosInd = getTargetPosition(0,targets); + } + + newPos = positions[newPosInd] + + $('.showing-points').removeClass('showing-points'); + $('.good, .bad, .neutral').removeClass('good bad neutral') + + rocket.animate({ + top:newPos[0], + left:newPos[1], + }, 500, function(){ + rocket.attr('data-pos',newPosInd); + pointsColor() + $('#planet'+(newPosInd+1)).addClass('showing-points'); + }); + + setTimeout(function(){ + currentMoves.shift() + rocket.removeClass('animating'); + animateRouteDisplay(currentMoves) + },1500) + } + } else if (currentMoves.length == 0){ + + rocket.removeClass('animating'); + $('#squares-wrapper').removeClass('inactive') + currentlyShowingRoute = false; + willShowRoute = false; + optimalFound = false; + if (trial < 1){ + + finishTurn() + $('#game-container').addClass('inactiveStrong'); + $('#optimal-route').addClass('inactive'); + + } else if(trial == 1){ + + console.log(trial); + $('#game-container').addClass('inactiveStrong'); + $('#intro-complete').removeClass('inactive'); + isIntroduction = false; + isMain = true; + screen++; + points = 1000; + // points = 19 + $('#optimal-route').addClass('inactive') + initializePointsBar(); + + } + } +} + + +optimalFoundLog = [NaN, NaN]; + +function introCallback(){ + + timeout = 1000 + optimalFound = checkActionOptimality(); + trial = optimalFound ? trial : trial-1; + screenTitle = optimalFound ? $('#optimal'):$(transitionMessages[optimalCounter]); + screenTitle.removeClass('inactive'); + optimalCounter = optimalFound ? 0 : optimalCounter+1; + // optimalFound = false; + + if (optimalCounter < 3){ + + setTimeout(function(){ + + screenTitle.addClass('inactive'); + + optimalFoundLog[trial] = true; + + if (optimalFound && trial == 1){ + $('#game-container').addClass('inactive'); + $('#intro-complete').removeClass('inactive'); + isIntroduction = false; + isMain = true; + screen++; + // points = 350; + + } else { + + finishTurn() + + } + + + },timeout); + + } else if (optimalCounter >= 3) { + + optimalFound = false; + optimalFoundLog[trial+1] = false; + willShowRoute = true; + optimalCounter = 0; + + } + +} + + // timeout = 2000; + // setTimeout(function(){ + // // NOWDEBUG + // if (trial == 3 ){ + // // if (trial == 0){ + // $('#game-container').addClass('inactive'); + // $('#intro-complete').removeClass('inactive'); + // isIntroduction = false; + // isMain = true; + // screen++; + // points = 350; + // // points = 19 + // initializePointsBar(); + // timeout = 1000; + // } else if (!willShowRoute) { + // finishTurn(); + // } + // },4000); + +// }; +// // currentlyShowingRoute = false; +// // willShowRoute = false; + +// optimalCounter = 0; +// }; + + +function mainCallback (){ + + if(points <= 0){ + + isMain = false; + $(gameStage + ', #squares-wrapper').addClass('inactiveStrong'); + $('#game-over-main').removeClass('inactive'); + + turnsLeft = 0 + experimentFinished = true; + uploadResults(); + + // NOWDEBUG + } else if ((trial % 25 == 24) || trial == lastTrial) { + // } else if (trial % 4 == 1 || trial == lastTrial) { + displayBlockTransition(); + if(trial == lastTrial) { + isMain = false; + experimentFinished = true; + recordData(); + uploadResults(); + $('#end-game').removeClass('inactive'); + + } + } else{ + finishTurn(); + } +}; + + +function checkActionOptimality(){ + // alert([keys, correctResponses[trial]]) + matching = keys.filter((val, ind) => correctResponses[trial][ind] == val) + matching = matching.length == 3 ? true : false + // alert([matching.length, matching]) + keys = []; + return matching; +}; + + +// SCREEN TRANSITION FUNCTIONS + +function displayBlockTransition() { + +if (trial == lastTrial) { + $('#end-game').removeClass('inactive'); +} else { + $('#game-container').addClass('inactiveStrong'); + $('#block-transition').removeClass('inactive'); +} + // END GAME +blockTransition = true; +}; + + +function hideBlockTransition() { + if (trial == lastTrial){ + $('#main-transition-text').addClass('inactive'); + // NOWDEBUG + // } else if ((trial % 4) == 1) { + } else if ((trial % 25) == 24) { + $('#block-transition').addClass('inactive'); + // END GAME + } + blockTransition = false; +}; + +//////////////// HELPER FUNCTIONS /////////////////////// +function clearRocketStyle(pos){ + rocket.attr('data-pos',pos); + rocket.removeAttr('style'); +}; + + +function displayWrongKey(element,action){ + $('#game-container').addClass('inactiveStrong'); + // $( element + " p").text(function (_, ctx) { + // return ctx.replace("INSERT-" + action[0], alphabet[action[1]-65]); + // }); + $(element).removeClass('inactive'); + setTimeout(function(){ + $(element).addClass('inactive') + $('#game-container').removeClass('inactiveStrong'); + wrongKey = false; + }, 1000); +}; + + +function displayScore(element){ + element.removeClass('inactive') + setTimeout(function(){ + element.addClass('inactive') + }, 500); +}; + + +function choosePoints(){ + if (keycode == 39) { + return $('#score-clockwise'); + } else { + return $('#score-jump'); + } +}; + + +function transitionToMain(){ + $('#planetNumbers').addClass('inactive'); + points = 1000; + isIntroduction = false; + isMain = true; + $('#main-intro-text').removeClass('inactive'); + $('#game-container').addClass('inactiveStrong'); + $(gameStage + ', #squares-wrapper').removeClass('inactive'); +}; + + +function screenSwitch(add, remove,classInfo=''){ + if(add != ''){ + $(add).addClass('inactive'); + } + if (remove != ''){ + $(remove).removeClass('inactive'); + } + + if (classInfo != ''){ + element = classInfo[0] + classToAdd = classInfo[1] + $(element).addClass(classToAdd) + } + screen++; + // displayButton() +}; + + +function updateClasses(element, add, classes){ + // console.log('in here bro') + if (add) { + $(element).addClass(classes); + } else { + $(element).removeClass(classes); + } +}; + + +function revertScreen(){ + console.log(screenSequence[screen][1]) + add = screenSequence[screen][1]; + remove = screenSequence[screen][0]; + // if (screenSequence[screen].length > 2){ + // updateClasses(screenSequence[screen][2], screenSequence[screen][4], screenSequence[screen][3]) + // } + screen = screen - 2; + console.log("thinks it is screen: " + screen) + console.log('add inactive to: ' + add + ' and active to ' + remove) + screenSwitch(add, remove); + // displayButton() +}; + + +function progressScreen(add, remove,classInfo=''){ + onlyForwardScreens = [0,9,11,17] + // if (onlyForwardScreens.filter(x=> x == screen).length != 0 && keycode != 39){ + // alert('should not cycle back') + // } + if (keycode == 37 && onlyForwardScreens.filter(x=> x == screen).length == 0){ + console.log('current screen: ' + screen + ' and revrting to ' + (screen-1)) + revertScreen() + } else { + if (keycode == 39) { + screenSwitch(add, remove,classInfo); + } + } + +}; + +// function goBack(){ +// if ($.inArray(screen,buttonScreens)+1){ +// $('.back').removeClass('inactive'); +// } else { +// $('.back').addClass('inactive'); + +// } +// } + + +function uploadResults(){ + +if(experimentFinished){ + pushDataMain() + + saveDataFile() + + $.ajax({ + + type: 'POST', + url: '/save', + data: {'data': JSON.stringify(mainData)}, + + success: function() { + console.log('success'); + }, + + // Endpoint not running, local save + error: function(err) { + if (err.status == 400) { // this should happen first after 3h now! + window.alert('server session timed out, you took way too long!') + } else { + // something unexpected happened + window.alert('another unknown error:' + err.status) + } + // stopping experiment and forward page to /next + console.log("Error with POST" + err.status) + } + }); +} +}; + + +function selectKeybindings() { + not_unique = true + while(not_unique){ + jump = Math.round(Math.random() * (90 - 65) + 65); + move = Math.round(Math.random() * (90 - 65) + 65); + not_unique = move == jump + } + + return [jump,move] +}; + +function debugUncertainty(yes){ + $('#intro-1').addClass('inactive'); + screen = 15 + // dispPattern = false; + // $('#planet2').addClass('showing-asteroids') + // $('#jump-uncertainty-5').removeClass('inactive') + + // screen = 19 + // $('#planet3').addClass('showing-asteroids') + // $('#jump-uncertainty-6').removeClass('inactive') + // running = false + // uncertaintyTotal = 0 + // isLearningUncertainty = false + // isLearningJumpUncertainty = true + + // screen = 25 + // $('#tip-2').removeClass('inactive') + + $('#jump-uncertainty-5').removeClass('inactive'); +} + +function gameOverResultsUpdate(){ + + tl = 0 + $('#squares-wrapper div').each(function(i){ + tl = tl + !($('#square'+(i+1 )).hasClass('hideSquare')) + }) + + for (i=0;i trial.map((action, t) => actionKeys[action-1])) + +alphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'.split(''); +keys = []; +doneAlready = false; +playing = false; + + + +$( document ).ready(function() { +game = $('#game'); +rocket = $('#rocket'); +planets = $('#planets div'); +squareClass= $('.square'); +squaresWrapper = $('#squares-wrapper'); +wrongKey = false; + +// debugMain(true) +// debugUncertainty(true) +// debugTransition(true) +// debuggingAfterUncertainty(true) +$( document ).keydown(function(event){ + + keyPressTime = new Date(); + console.log('test') + keycode = (event.keyCode ? event.keyCode : event.which); + if (isIntroduction){ + + if (screen == 7) { + if(keycode==39){ + initializePointsBar(); + assignPlanet([3,3,3,3,3,3]) + } + isEnding = false; + wrongKey = false; + } else if (screen == 8){ + practiceMove(keycode); + } else if (screen == 10) { + practiceJump(keycode); + } else if (screen == 15){ + isReverting = false; + uncertaintyTotal = 0; + missed = false; + running = false; + } else if (screen == 16){ + isLearningUncertainty = true; + learnUncertainty(); + // } else if (screen == 18){ + // isLearningJumpUncertainty = true; + // wrongKeyMessage = '#wrong-key-jump' + // learnUncertainty(action=1); + } else if (screen == 21) { + if(keycode == 39 && ! $('#intro-practice-start').hasClass('inactive')){ + $('#intro-practice-start').addClass('inactive') + $('.showing-asteroids').removeClass('showing-asteroids') + screenTransition = true; + finishTurn(); + transitionFromOptimalDisplay = false; + optimalFound = false; + playing = true + } else if (!willShowRoute && !screenTransition && !rocket.hasClass('animating')){ + playTurn(introCallback); + } else if (willShowRoute && !currentlyShowingRoute){ + displayRoute() + }; + // } + } + + if (!playing && (keycode == 39 || keycode == 37)){ + add = screenSequence[screen+1][0] + remove = screenSequence[screen+1][1] + if (screenSequence[screen+1].length > 2){ + classInfo = screenSequence[screen+1][2] + } else { + classInfo = '' + } + progressScreen(add,remove, classInfo) + } + + } else if (isMain) { + + if(screen == 22){ + + if (keycode == 39){ + screenSwitch('#intro-complete', '#main-intro-text'); + points = mainData.startingPoints; + trial = -1; + keyPress = []; stimulusDisplay = []; animationEnd = []; + mainRTarray = []; mainPointsArray = []; mainStateArray = []; mainKeysArray = []; + } + + } else { + + if (!$('#main-intro-text').hasClass('inactive') || !$('#main-intro-text-gameover').hasClass('inactive')) { + if (keycode == 39){ + // $('#game-container').removeClass('asteroids') + $('#main-intro-text').addClass('inactive'); + keyPress = []; stimulusDisplay = []; animationEnd = []; + mainRTarray = []; mainPointsArray = []; mainStateArray = []; mainKeysArray = []; + screenTransition = true; + finishTurn(); + } + } else if(!blockTransition) { + playTurn(mainCallback); + } else { + if(keycode == 39){ + hideBlockTransition(); + finishTurn(); + } + } + } + } else if (experimentFinished && keycode== 39 ){ + document.location = '/next' + } + + + ////////////////////////// +}); +}); diff --git a/sat_pruning/js/jquery-3.5.1.min.js b/sat_pruning/js/jquery-3.5.1.min.js new file mode 100644 index 0000000..b061403 --- /dev/null +++ b/sat_pruning/js/jquery-3.5.1.min.js @@ -0,0 +1,2 @@ +/*! jQuery v3.5.1 | (c) JS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.5.1",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function D(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||j,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,j=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="",y.option=!!ce.lastChild;var ge={thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n",""]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d\s*$/g;function qe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function Le(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function He(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Oe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Ut,Xt=[],Vt=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Xt.pop()||S.expando+"_"+Ct.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Vt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Vt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Vt,"$1"+r):!1!==e.jsonp&&(e.url+=(Et.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Xt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Ut=E.implementation.createHTMLDocument("").body).innerHTML="
",2===Ut.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):("number"==typeof f.top&&(f.top+="px"),"number"==typeof f.left&&(f.left+="px"),c.css(f))}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=$e(y.pixelPosition,function(e,t){if(t)return t=Be(e,n),Me.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 0 ind < 5) + // mainRocketStart = mainRocketStart.filter((x, ind ) => ind < 5) + + // console.log(mainPlanets[trial]) + // console.log(mainRocketStart[trial]) + // console.log(mainNoisyPlanet[trial]) + // console.log(mainTurns) + // console.log(mainNoise) +} + +config = JSON.parse(config); +assignValues(config); + diff --git a/sat_pruning/src/Reisemuster_Vorlage_2.png b/sat_pruning/src/Reisemuster_Vorlage_2.png new file mode 100644 index 0000000..dd025f9 Binary files /dev/null and b/sat_pruning/src/Reisemuster_Vorlage_2.png differ diff --git a/sat_pruning/src/Tipp_1.png b/sat_pruning/src/Tipp_1.png new file mode 100644 index 0000000..f714f0c Binary files /dev/null and b/sat_pruning/src/Tipp_1.png differ diff --git a/sat_pruning/src/Tipp_2.png b/sat_pruning/src/Tipp_2.png new file mode 100644 index 0000000..92d0989 Binary files /dev/null and b/sat_pruning/src/Tipp_2.png differ diff --git a/sat_pruning/src/arrow_keys.png b/sat_pruning/src/arrow_keys.png new file mode 100644 index 0000000..505d01e Binary files /dev/null and b/sat_pruning/src/arrow_keys.png differ diff --git a/sat_pruning/src/asteroids_miss_jump.png b/sat_pruning/src/asteroids_miss_jump.png new file mode 100644 index 0000000..d8e3880 Binary files /dev/null and b/sat_pruning/src/asteroids_miss_jump.png differ diff --git a/sat_pruning/src/asteroids_miss_move.png b/sat_pruning/src/asteroids_miss_move.png new file mode 100644 index 0000000..6123d58 Binary files /dev/null and b/sat_pruning/src/asteroids_miss_move.png differ diff --git a/sat_pruning/src/debris.png b/sat_pruning/src/debris.png new file mode 100644 index 0000000..0a93381 Binary files /dev/null and b/sat_pruning/src/debris.png differ diff --git a/sat_pruning/src/move_keys.png b/sat_pruning/src/move_keys.png new file mode 100644 index 0000000..3894c90 Binary files /dev/null and b/sat_pruning/src/move_keys.png differ diff --git a/sat_pruning/src/planet_1.png b/sat_pruning/src/planet_1.png new file mode 100644 index 0000000..042a888 Binary files /dev/null and b/sat_pruning/src/planet_1.png differ diff --git a/sat_pruning/src/planet_2.png b/sat_pruning/src/planet_2.png new file mode 100644 index 0000000..a20a9c3 Binary files /dev/null and b/sat_pruning/src/planet_2.png differ diff --git a/sat_pruning/src/planet_3.png b/sat_pruning/src/planet_3.png new file mode 100644 index 0000000..ff5b841 Binary files /dev/null and b/sat_pruning/src/planet_3.png differ diff --git a/sat_pruning/src/planet_4.png b/sat_pruning/src/planet_4.png new file mode 100644 index 0000000..564a4ac Binary files /dev/null and b/sat_pruning/src/planet_4.png differ diff --git a/sat_pruning/src/planet_5.png b/sat_pruning/src/planet_5.png new file mode 100644 index 0000000..b43da4e Binary files /dev/null and b/sat_pruning/src/planet_5.png differ diff --git a/sat_pruning/src/planet_points.png b/sat_pruning/src/planet_points.png new file mode 100644 index 0000000..5e9c721 Binary files /dev/null and b/sat_pruning/src/planet_points.png differ diff --git a/sat_pruning/src/rocket.png b/sat_pruning/src/rocket.png new file mode 100644 index 0000000..c2c47a4 Binary files /dev/null and b/sat_pruning/src/rocket.png differ diff --git a/sat_pruning/src/task_commands_m_jump.png b/sat_pruning/src/task_commands_m_jump.png new file mode 100644 index 0000000..3b5e2b3 Binary files /dev/null and b/sat_pruning/src/task_commands_m_jump.png differ diff --git a/sat_pruning/src/task_commands_x_jump.png b/sat_pruning/src/task_commands_x_jump.png new file mode 100644 index 0000000..867364c Binary files /dev/null and b/sat_pruning/src/task_commands_x_jump.png differ diff --git a/sat_pruning/src/turns.png b/sat_pruning/src/turns.png new file mode 100644 index 0000000..6eddf3e Binary files /dev/null and b/sat_pruning/src/turns.png differ diff --git a/sat_pruning/style.css b/sat_pruning/style.css new file mode 100644 index 0000000..63989fa --- /dev/null +++ b/sat_pruning/style.css @@ -0,0 +1,429 @@ +body { + height: 100vh; + width: 100%; + color:white; + font-size: 26px; + font-family:Arial, Helvetica, sans-serif; + margin: 0px; + padding:0px; +} + +.small_text { + font-size: 20px; +} + +p { + margin-top: 10px; + margin-bottom: 5px; +} + +@media screen and ( max-width : 2000px ) { + body { + font-size: 24px; + } + + .small_text { + font-size: 18px; + } + +} + + +@media screen and ( max-width : 1800px ) { + body { + font-size: 22px; + } + + .small_text { + font-size: 16px; + } + +} + + +@media screen and ( max-width : 1600px ) { + body { + font-size: 18px; + } + + .small_text { + font-size: 12px; + } +} + + +@media screen and ( max-width : 1400px ) { + body { + font-size: 16px; + } + + .small_text { + font-size: 10px; + } +} + +@media screen and ( max-width : 1200px ) { + body { + font-size: 16px; + } + + .small_text { + font-size: 10px; + } + +} + +@media screen and ( max-width : 1000px ) { + body { + font-size: 14px; + } + + .small_text { + font-size: 8px; + } +} + +@media screen and ( max-width : 800px ) { + body { + font-size: 12px; + } + + .small_text { + font-size: 6px; + } +} + + +#screen { +position: absolute; +top: 0; +bottom: 0; +left: 0; +right: 0; +width: 100vw; +/* height: 56.25vw; */ +/* height: width ratio = 9/16 = .5625; */ +max-height: 100vh; +max-width: 177.78vh; +margin: auto; +background-color: rgb(13,13, 13); +} + +.back { + width: 180px; + height: 80px; + background-color: blueviolet; + position:absolute; + bottom:0; + display: flex; + justify-content: center; + align-items: center; + text-align: center; +} +.img-instr-big{ + display: inline-block; + position: relative; + width: 50%; + padding: 4vh 0 4vh 0; + height: auto; +} + +.img-instr { + display: inline-block; + position: relative; + padding: 4vh 0 4vh 0; + width: 45%; + height: auto; +} + +.img-instr-small { + display: inline-block; + position: relative; + width: 30%; + height: auto; + padding: 4vh 0 4vh 0; +} +.planet { + display: block; + position: absolute; + transform: translate(-50%,-50%); /* This centers the anchor point */ + height: 19.55%; + width: 11%; + background-repeat: no-repeat; + background-size: contain; + align-items: center; +} + +.planet:after { + + content: attr(data-points); + + display: block; + position: absolute; + left: 0; + width: 100%; + bottom: -50px; + text-align: center; + height: auto; + + display: none; +} + +.planet.showing-points:after { + display: block; + z-index: 3; + color: white; +} + + +#game-container { + display: block; + position: absolute; + height: 100%; + width: 100%; +} + +.asteroids { + background-image: url("src/debris.png"); + background-position: center; + background-repeat: none; + background-size: contain; + background-color: rgb(13, 13, 13); +} + +#squares-wrapper { + position: absolute; + width: 20%; + height: 3.5%; + left: 50%; + top: 50%; + transform: translate(-50%, -50%); + text-align: center; + /* display: none; */ +} + +#squares-wrapper[data-num-squares="2"] #square3 { + display: none; +} + +.square { + background-color: chartreuse; + width: 9.845%; + height: 100%; + margin: 0px 10px 0px 10px; + display:inline-block; +} +.hideSquare { + visibility: hidden; +} + +strong { + color: rgb(173, 162, 85); +} + + +.showing-asteroids::before { + content: ""; + position: absolute; + bottom: -26%; + right: -28%; + width: 155%; + height: 155%; + background-image: url('src/debris.png'); + background-repeat: no-repeat; + background-size: contain; + background-position: center; + z-index: 2; +} + +/* .show-asteroids::before { + content: ""; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + background-image: url('src/planet_2.png'); + z-index: 10; +} */ + + +.planet[data-planet-img="1"] { background-image: url("src/planet_1.png");} +.planet[data-planet-img="2"] { background-image: url("src/planet_2.png");} +.planet[data-planet-img="3"] { background-image: url("src/planet_3.png");} +.planet[data-planet-img="4"] { background-image: url("src/planet_4.png");} +.planet[data-planet-img="5"] { background-image: url("src/planet_5.png");} +.planet[data-planet-img="6"] { background-image: url("src/planet_6.png");} + +div[data-pos="0"] {top:48%; left: 20%;} +div[data-pos="1"] {top:24%; left: 40%;} +div[data-pos="2"] {top:24%; left: 60%;} +div[data-pos="3"] {top:48%; left: 80%;} +div[data-pos="4"] {top:74%; left: 60%;} +div[data-pos="5"] {top:74%; left: 40%;} + + +#points-wrapper { + width: 52%; + height:4%; + position:absolute; + top: 5%; + left: 50%; + transform: translate(-50%, -50%); + background-color: rgba(38, 38, 38); + border: 3px solid rgba(38, 38, 38); +} + +.showing-points.good:after { + color:chartreuse +} + + +.showing-points.bad:after { + color: #E3001C +} + + +.showing-points.neutral:after { + color:#fff +} + +#points-filling { + width: 50%; + height:100%; + top: 0; + left: 0; + position:absolute; + /* 254,0,1 */ + background-color:rgb(0, 0, 255); + /* border: solid purple; */ +} + +#red-points-filling { + width: 100%; + height: 100%; + background-color: rgb(227, 0, 28); + opacity: 0; +} + +.active { + display: block; +} + +.inactive { + display: none; +} + +.inactiveStrong { + display: none !important; +} + + +.p1 { top: 48%; left: 20%; } +.p2 { top: 24%; left: 40%; } +.p3 { top: 24%; left: 60%; } +.p4 { top: 48%; left: 80%; } +.p5 { top: 74%; left: 60%; } +.p6 { top: 74%; left: 40%; } + +.p1-intro { top: 50%; left: 16.5%; } +.p2-intro { top: 50%; left: 33%; } +.p3-intro { top: 50%; left: 49.5%; } +.p4-intro { top: 50%; left: 67%; } +.p5-intro { top: 50%; left: 83%; } + + +.planetNumber{ + position:absolute; + color: red; + z-index: 3; + transform: translate(-75%,-100%); +} + + +#rocket { + background-image: url("src/rocket.png"); + background-repeat: no-repeat; + background-size: contain; + height: 8.88%; + width: 5%; + position:absolute; + z-index: 3; + transform: translate(-50%, -50%); +} + +#instructions { + display: block; + position: absolute; + height: 100%; + width: 100%; + background-color: rgb(36, 27, 27); + /* z-index:3; */ +} + +#main-transition-text p { + top: 50%; +} + + +.text-aligned { + position: absolute; + width: 100%; + transform: translate(-50%,-50%); + top: 50%; + left:50%; + text-align: center; + z-index: 2; +} + +.score-display{ + position: absolute; + top: 35%; + left: 50%; +} +.text-nonaligned { + position: absolute; + width: 100%; + height:100%; + transform: translate(-50%,-50%); + top: 50%; + left:50%; + text-align: center; +} + + +.top{ + position: absolute; + width: 100%; + top: 5px; +} + +/* .center { + position: absolute; + width: 100%; + top:50%; +} */ + + +.bottom{ + position: absolute; + width: 100%; + bottom: 20px; +} + + +#intro-screen-planets p { + text-align: center; + position: absolute; + width: 100%; +} + +#intro-screen-points p { + text-align: center; + position: absolute; + width: 100%; +} + +.display-over { + z-index: 10; +}