<snapdata remixID="11628791"><project name="ScratchToPSP" app="Snap! 7, https://snap.berkeley.edu" version="2"><notes>0.1.1 (12/09/2022)&#xD;- Now you can use values blocks in list, variables.&#xD;&#xD;0.1 (11/09/2022)</notes><thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAAAAXNSR0IArs4c6QAABVZJREFUeF7t2E9om3Ucx/Hv07RN16bM/UPnwQqtTKYXhQluHpSKF0VEBl1PXtSrXRErhXlQKOtg/9Bd5i7ioRtMEUSQsbodRKEDB4IgbgXdxU13Gcu2JE3zjO+vex7qXEfTPcknG+9cGtInz/fJOy9+yS/R/l0jce/ZL63VboW+p23os9OtdllcT8YFosOvro2Hn+rJ+LTZnK4weSGbE3GWli0QHXltXTy0ubslLxCALfm2ZHpRAMw0JyertwAA6y3G8ZkWAGCmOTlZvQUAWG8xjs+0AAAzzcnJ6i1wV4DJLrR26Zxd3zdY77nT4/Pb91j5+Ad3fH7Px79Z9dfvrGPLjvD/4thj6XHsglec/L554pIAc/1bLdf/vFVO7A0vpnt02toefsLiKxctLl0N9/3mOJP7c2eOBkjz53+0tg0DFq1+xCrTB61z8D2rTB+wyol95uDMIit98bZ1vXXEzGKL8r1m83NmuQ4A3jd0srnQFKCvNtXfT1n7ky+lCFa9M2U3Ph+2/PZJ69gyHB7345IV8fb7cbloUb7wP0x+XLKyFSZmLa6WzUpFK3+/2/JvfBJWQF8hFx/nL48VMJs3uZXPctePYP/o9BWtONYXXkNh8q9wv3v0ZPhIvh2g/8+PuXF4h1kUmQP2xxY+Zr+18vEx63zl/bDq+aroKJOPYAC2MpPGXRubkMa15czLKADAZUTikMYVWBJgz/iMXZt4rnGTb525e+dJu77/5fCx7puTxbttvgM2PL98QAow2eX69zK/H3X1WlRYF3ampWMj1jV0IFzs3JmpW9/lRq1zcMTiK3/7VzqLHtpotYt/WLTm0bAR8Z2y75iTHbLvjHMDL9jczJS1b3rRotUbrfrL19b+7JtWOXXIav+cCwD9ZP44mxC5jaZcwH92wb679ZuvQr4CRj1rrfTVmLWtfzzdNCQ748UrZLJ79b++E7720Wbz3W7t8p/pZiX5mSUuXw0/u6S74skL5j/fVM9+EwC2P/N6AA7Aprz/8iEpQIdV+eFTW/Xu0YXd6fhMuLjav7Phb25gW3jcj0vuO7jSsZ1hxUp2yL6rvRPA4od9Vti9sIvODWxNd8j+vMrpQws/3Vhk87M/2/zsTwCU02jOBbTMJqQwcT4ALI73p6+c74DNQaCcEsVxHK/sAlb4tGUP8++D3B70AvcA8EFPw+trRgEANqMyM5YsAEBwSAsAUJqf4QDEgLQAAKX5GQ5ADEgLAFCan+EAxIC0AACl+RkOQAxICwBQmp/hAMSAtAAApfkZDkAMSAsAUJqf4QDEgLQAAKX5GQ5ADEgLAFCan+EAxIC0AACl+RkOQAxICwBQmp/hAMSAtAAApfkZDkAMSAsAUJqf4QDEgLQAAKX5GQ5ADEgLAFCan+EAxIC0AACl+RkOQAxICwBQmp/hAMSAtAAApfkZDkAMSAsAUJqf4QDEgLQAAKX5GQ5ADEgLAFCan+EAxIC0AACl+RkOQAxICwBQmp/hAMSAtAAApfkZDkAMSAsAUJqf4QDEgLQAAKX5GQ5ADEgLAFCan+EAxIC0AACl+RkOQAxICwBQmp/hAMSAtAAApfkZDkAMSAsAUJqf4QDEgLQAAKX5GQ5ADEgLAFCan+EAxIC0AACl+RkOQAxICwBQmp/hAMSAtAAApfkZDkAMSAsAUJqf4QDEgLQAAKX5GQ5ADEgLAFCan+EAxIC0AACl+RkOQAxICwBQmp/hAMSAtAAApfkZDkAMSAsAUJqf4QDEgLQAAKX5GQ5ADEgLAFCan+EAxIC0AACl+RkOQAxICwBQmp/hAMSAtAAApfkZDkAMSAsAUJqf4TcB970SxtFx7l0AAAAASUVORK5CYII=</thumbnail><scenes select="1"><scene name="ScratchToPSP"><notes>0.1.1 (12/09/2022)&#xD;- Now you can use values blocks in list, variables.&#xD;&#xD;0.1 (11/09/2022)</notes><hidden></hidden><headers></headers><code></code><blocks><block-definition s="%&apos;1&apos; + %&apos;2&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportJoinWords"><list><l>(</l><block var="1"/><l> + </l><block var="2"/><l>)</l></list></block></list></block></block></script></block-definition><block-definition s="if %&apos;1&apos; %&apos;end1&apos; else %&apos;end2&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%b"></input><input type="%cs"></input><input type="%cs"></input></inputs><script><block s="doIf"><block s="reportEquals"><block var="block"/><l>0</l></block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- If </l><block var="1"/><l> is true then (</l><block s="reportVariadicSum"><list><block s="reportListAttribute"><l><option>length</option></l><block var="gap"/></block><l>1</l></list></block><l>)</l></list></block></block></script></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>if </l><block var="1"/><l> then</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block><block s="doAddToList"><l>    </l><block var="gap"/></block><block s="doRun"><block var="end1"/><list></list></block><block s="doDeleteFromList"><l>1</l><block var="gap"/></block><block s="doIf"><block s="reportEquals"><block var="block"/><l>0</l></block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Else (</l><block s="reportVariadicSum"><list><block s="reportListAttribute"><l><option>length</option></l><block var="gap"/></block><l>1</l></list></block><l>)</l></list></block></block></script></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>else</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block><block s="doAddToList"><l>    </l><block var="gap"/></block><block s="doRun"><block var="end2"/><list></list></block><block s="doDeleteFromList"><l>1</l><block var="gap"/></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>end</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="if %&apos;1&apos; %&apos;end&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%b"></input><input type="%cs" readonly="true"><options>c-shape λ</options></input></inputs><script><block s="doIf"><block s="reportEquals"><block var="block"/><l>0</l></block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- If </l><block var="1"/><l> is true then (</l><block s="reportVariadicSum"><list><block s="reportListAttribute"><l><option>length</option></l><block var="gap"/></block><l>1</l></list></block><l>)</l></list></block></block></script></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>if </l><block var="1"/><l> then</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block><block s="doAddToList"><l>    </l><block var="gap"/></block><block s="doRun"><block var="end"/><list></list></block><block s="doDeleteFromList"><l>1</l><block var="gap"/></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>end</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="repeat %&apos;1&apos; %&apos;end&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%ca"></input></inputs><script><block s="doIf"><block s="reportEquals"><block var="block"/><l>0</l></block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Repeat </l><block var="1"/><l> times</l></list></block></block></script></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>for i = 1,</l><block var="1"/><l>,1 do</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block><block s="doAddToList"><l>    </l><block var="gap"/></block><block s="doRun"><block var="end"/><list></list></block><block s="doDeleteFromList"><l>1</l><block var="gap"/></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>end</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="repeat until %&apos;1&apos; %&apos;end&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%b"></input><input type="%ca"></input></inputs><script><block s="doIf"><block s="reportEquals"><block var="block"/><l>0</l></block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Repeat until </l><block var="1"/></list></block></block></script></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>repeat</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block><block s="doAddToList"><l>    </l><block var="gap"/></block><block s="doRun"><block var="end"/><list></list></block><block s="doDeleteFromList"><l>1</l><block var="gap"/></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>until(</l><block var="1"/><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="%&apos;1&apos; - %&apos;2&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportJoinWords"><list><l>(</l><block var="1"/><l> - </l><block var="2"/><l>)</l></list></block></list></block></block></script></block-definition><block-definition s="%&apos;1&apos; × %&apos;2&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportJoinWords"><list><l>(</l><block var="1"/><l> * </l><block var="2"/><l>)</l></list></block></list></block></block></script></block-definition><block-definition s="%&apos;1&apos; / %&apos;2&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportJoinWords"><list><l>(</l><block var="1"/><l> / </l><block var="2"/><l>)</l></list></block></list></block></block></script></block-definition><block-definition s="%&apos;1&apos; ^ %&apos;2&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportJoinWords"><list><l>(</l><block var="1"/><l> ^ </l><block var="2"/><l>)</l></list></block></list></block></block></script></block-definition><block-definition s="%&apos;1&apos; mod %&apos;2&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportJoinWords"><list><l>(</l><block var="1"/><l> % </l><block var="2"/><l>)</l></list></block></list></block></block></script></block-definition><block-definition s="round %&apos;1&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%n"></input></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportJoinWords"><list><l>math.floor(</l><block var="1"/><l> + 0.5)</l></list></block></list></block></block></script></block-definition><block-definition s="%&apos;sqrt&apos; of %&apos;1&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">sqrt<options>abs&#xD;neg&#xD;ceiling&#xD;floor&#xD;sqrt&#xD;sin&#xD;cos&#xD;tan&#xD;asin&#xD;acos&#xD;atan&#xD;ln&#xD;log&#xD;e^&#xD;10^&#xD;2^&#xD;rad</options></input><input type="%n"></input></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportIfElse"><block s="reportEquals"><block var="sqrt"/><l>neg</l></block><block s="reportJoinWords"><list><l>-(</l><block var="1"/><l>)</l></list></block><block s="reportIfElse"><block s="reportEquals"><block var="sqrt"/><l>ln</l></block><block s="reportJoinWords"><list><l>math.log(</l><block var="1"/><l>)</l></list></block><block s="reportIfElse"><block s="reportEquals"><block var="sqrt"/><l>log</l></block><block s="reportJoinWords"><list><l>math.log10(</l><block var="1"/><l>)</l></list></block><block s="reportIfElse"><block s="reportEquals"><block var="sqrt"/><l>e^</l></block><block s="reportJoinWords"><list><l>math.exp(</l><block var="1"/><l>)</l></list></block><block s="reportIfElse"><block s="reportEquals"><block var="sqrt"/><l>10^</l></block><block s="reportJoinWords"><list><l>10 ^ </l><block var="1"/></list></block><block s="reportIfElse"><block s="reportEquals"><block var="sqrt"/><l>2^</l></block><block s="reportJoinWords"><list><l>2 ^ </l><block var="1"/></list></block><block s="reportJoinWords"><list><l>math.</l><block var="sqrt"/><l>(</l><block var="1"/><l>)</l></list></block></block></block></block></block></block></block></list></block></block></script></block-definition><block-definition s="pick random %&apos;1&apos; to %&apos;2&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input></inputs><script><block s="doIf"><block s="reportEquals"><block var="random"/><l>0</l></block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><l>math.randomseed(os.time())</l><block s="reportUnicodeAsLetter"><l>10</l></block><block var="list"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><l>-- Random (core)</l><block s="reportUnicodeAsLetter"><l>10</l></block><block var="list"/></list></block></block><block s="doSetVar"><l>random</l><l>1</l></block></script></block><block s="doReport"><block s="reportNewList"><list><block s="reportJoinWords"><list><l>math.random(</l><block var="1"/><l>, </l><block var="2"/><l>)</l></list></block></list></block></block></script></block-definition><block-definition s="%&apos;1&apos; &lt; %&apos;2&apos;" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportJoinWords"><list><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block><l> &lt; </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="2"/><l><option>number</option></l></block><block s="reportIsA"><block var="2"/><l><option>list</option></l></block></block><block var="2"/><block s="reportJoinWords"><list><l>"</l><block var="2"/><l>"</l></list></block></block></list></block></list></block></block></script></block-definition><block-definition s="%&apos;1&apos; = %&apos;2&apos;" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportJoinWords"><list><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block><l> = </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="2"/><l><option>number</option></l></block><block s="reportIsA"><block var="2"/><l><option>list</option></l></block></block><block var="2"/><block s="reportJoinWords"><list><l>"</l><block var="2"/><l>"</l></list></block></block></list></block></list></block></block></script></block-definition><block-definition s="%&apos;1&apos; &gt; %&apos;2&apos;" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportJoinWords"><list><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block><l> &gt; </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="2"/><l><option>number</option></l></block><block s="reportIsA"><block var="2"/><l><option>list</option></l></block></block><block var="2"/><block s="reportJoinWords"><list><l>"</l><block var="2"/><l>"</l></list></block></block></list></block></list></block></block></script></block-definition><block-definition s="%&apos;1&apos; and %&apos;2&apos;" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%b"></input><input type="%b"></input></inputs><script><block s="doReport"><block s="reportJoinWords"><list><l>(</l><block var="1"/><l> and </l><block var="2"/><l>)</l></list></block></block></script></block-definition><block-definition s="%&apos;1&apos; or %&apos;2&apos;" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%b"></input><input type="%b"></input></inputs><script><block s="doReport"><block s="reportJoinWords"><list><l>(</l><block var="1"/><l> or </l><block var="2"/><l>)</l></list></block></block></script></block-definition><block-definition s="not %&apos;1&apos;" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%b"></input></inputs><script><block s="doReport"><block s="reportJoinWords"><list><l>not(</l><block var="1"/><l>)</l></list></block></block></script></block-definition><block-definition s="set variable %&apos;1&apos; to %&apos;2&apos;" type="command" category="variables"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s">0</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Set variable "</l><block var="1"/><l>" to </l><block var="2"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><block var="1"/><l> = </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="2"/><block s="reportJoinWords"><list><l>"</l><block var="2"/><l>"</l></list></block></block><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="change variable %&apos;1&apos; by %&apos;2&apos;" type="command" category="variables"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%n"></input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Change variable "</l><block var="1"/><l>" by </l><block var="2"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><block var="1"/><l> = </l><block var="1"/><l> + </l><block var="2"/><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="variable %&apos;1&apos;" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block s="reportNewList"><list><block var="1"/></list></block></block></script></block-definition><block-definition s="&quot; %&apos;1&apos; &quot;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block></script></block-definition><block-definition s="join %&apos;1&apos; %&apos;2&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s">hello</input><input type="%s">world</input></inputs><script><block s="doReport"><block s="reportJoinWords"><list><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block><l> .. </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="2"/><l><option>number</option></l></block><block s="reportIsA"><block var="2"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="2"/><l>"</l></list></block></block></list></block></block></script></block-definition><block-definition s="length of text %&apos;1&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s">world</input></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportJoinWords"><list><l>#</l><block s="reportIfElse"><block s="reportIsA"><block var="1"/><l><option>list</option></l></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block></list></block></list></block></block></script></block-definition><block-definition s="load %&apos;1&apos; sprite %&apos;2&apos; with %&apos;3&apos; frames $arrowDown" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">png<options>png&#xD;jpg&#xD;gif&#xD;bmp</options></input><input type="%s"></input><input type="%n">5</input></inputs><script><block s="doIf"><block s="reportEquals"><block var="sprites"/><l>0</l></block><script><block s="doSetVar"><l>sprites</l><l>1</l></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><l>sprites = {}</l><block s="reportUnicodeAsLetter"><l>10</l></block><block var="list"/></list></block></block></script></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Load </l><block var="1"/><l> sprite "</l><block var="2"/><l>" with </l><block var="3"/><l> frames</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>table.insert(sprites, </l><block var="2"/><l>)</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>sprites.</l><block var="2"/><l> = {frames={</l></list></block></block><block s="doFor"><l>i</l><l>1</l><block var="3"/><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><l>image.load("sprites/</l><block var="2"/><l>/</l><block var="i"/><l>.</l><block var="1"/><l>"), </l></list></block></block></script></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><l>}, x=240, y=136, direction=0, alpha=255, frame=1, length=</l><block var="3"/><l>, size=100}</l></list></block></block><block s="doSetVar"><l>block</l><l>1</l></block><custom-block s="repeat %n %ca"><block var="3"/><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block var="gap"/><l>sprites.</l><block var="2"/><l>.frames[i]:center()</l></list></block></block></script></custom-block><block s="doSetVar"><l>block</l><l>0</l></block></script></block-definition><block-definition s="button %&apos;1&apos; being pressed?" type="predicate" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">up<options>up&#xD;right&#xD;down&#xD;left&#xD;△&#xD;⭕&#xD;⨉&#xD;◻&#xD;r&#xD;l&#xD;start&#xD;select&#xD;home&#xD;analogx&#xD;analogy</options></input></inputs><script><block s="doIfElse"><block s="reportOr"><block s="reportOr"><block s="reportEquals"><block var="1"/><l>△</l></block><block s="reportEquals"><block var="1"/><l>⭕</l></block></block><block s="reportOr"><block s="reportEquals"><block var="1"/><l>⨉</l></block><block s="reportEquals"><block var="1"/><l>◻</l></block></block></block><script><block s="doIf"><block s="reportEquals"><block var="1"/><l>△</l></block><script><block s="doReport"><l>buttons.held.triangle</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="1"/><l>⭕</l></block><script><block s="doReport"><l>buttons.held.circle</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="1"/><l>⨉</l></block><script><block s="doReport"><l>buttons.held.cross</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="1"/><l>◻</l></block><script><block s="doReport"><l>buttons.held.square</l></block></script></block></script><script><block s="doReport"><block s="reportJoinWords"><list><l>buttons.held.</l><block var="1"/></list></block></block></script></block></script></block-definition><block-definition s="on button %&apos;1&apos; press" type="predicate" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">up<options>up&#xD;right&#xD;down&#xD;left&#xD;△&#xD;⭕&#xD;⨉&#xD;◻&#xD;r&#xD;l&#xD;start&#xD;select&#xD;home&#xD;analogx&#xD;analogy</options></input></inputs><script><block s="doIfElse"><block s="reportOr"><block s="reportOr"><block s="reportEquals"><block var="1"/><l>△</l></block><block s="reportEquals"><block var="1"/><l>⭕</l></block></block><block s="reportOr"><block s="reportEquals"><block var="1"/><l>⨉</l></block><block s="reportEquals"><block var="1"/><l>◻</l></block></block></block><script><block s="doIf"><block s="reportEquals"><block var="1"/><l>△</l></block><script><block s="doReport"><l>buttons.triangle</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="1"/><l>⭕</l></block><script><block s="doReport"><l>buttons.circle</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="1"/><l>⭕</l></block><script><block s="doReport"><l>buttons.cross</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="1"/><l>⭕</l></block><script><block s="doReport"><l>buttons.square</l></block></script></block></script><script><block s="doReport"><block s="reportJoinWords"><list><l>buttons.</l><block var="1"/></list></block></block></script></block></script></block-definition><block-definition s="move %&apos;1&apos; by %&apos;2&apos; steps" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s">sprite</input><input type="%n">10</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Move sprite "</l><block var="1"/><l>" by </l><block var="2"/><l> steps</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>sprites.</l><block var="1"/><l>.x = sprites.</l><block var="1"/><l>.x + (</l><custom-block s="%n × %n"><block var="2"/><custom-block s="%s of %n"><l>cos</l><custom-block s="%s of %n"><l>rad</l><custom-block s="direction of %s"><block var="1"/></custom-block></custom-block></custom-block></custom-block><l>)</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>sprites.</l><block var="1"/><l>.y = sprites.</l><block var="1"/><l>.y + (</l><custom-block s="%n × %n"><block var="2"/><custom-block s="%s of %n"><l>sin</l><custom-block s="%s of %n"><l>rad</l><custom-block s="direction of %s"><block var="1"/></custom-block></custom-block></custom-block></custom-block><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="turn %&apos;1&apos; %&apos;2&apos; %&apos;3&apos; degrees" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s">sprite</input><input type="%s" readonly="true">↻<options>↻&#xD;↺</options></input><input type="%n">15</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Turn sprite "</l><block var="1"/><l>" </l><block var="2"/><l> by </l><block var="3"/><l> degrees</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><custom-block s="direction of %s"><block var="1"/></custom-block><l> = </l><custom-block s="direction of %s"><block var="1"/></custom-block><block s="reportIfElse"><block s="reportEquals"><block var="2"/><l>↻</l></block><l> + </l><l> - </l></block><block var="3"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>sprites.</l><block var="1"/><l>.frames[sprites.</l><block var="1"/><l>.frame]:rotate(</l><custom-block s="direction of %s"><block var="1"/></custom-block><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="point %&apos;1&apos; in direction %&apos;2&apos;" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s">sprite</input><input type="%n">0</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Point sprite "</l><block var="1"/><l>" in direction </l><block var="2"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><custom-block s="direction of %s"><block var="1"/></custom-block><l> = </l><block var="2"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>sprites.</l><block var="1"/><l>.frames[sprites.</l><block var="1"/><l>.frame]:rotate(</l><custom-block s="direction of %s"><block var="1"/></custom-block><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="go %&apos;1&apos; to x: %&apos;2&apos; y: %&apos;3&apos;" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s">sprite</input><input type="%n">0</input><input type="%n">0</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Go sprite "</l><block var="1"/><l>" to x: </l><block var="2"/><l>, y: </l><block var="3"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>sprites.</l><block var="1"/><l>.x = </l><block var="2"/><l> + 240</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>sprites.</l><block var="1"/><l>.y = -(</l><block var="2"/><l>) + 136</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="change %&apos;1&apos; of %&apos;2&apos; by %&apos;3&apos;" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">x<options>x&#xD;y</options></input><input type="%s">sprite</input><input type="%n">10</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Change </l><block var="1"/><l> of sprite "</l><block var="2"/><l>" by </l><block var="3"/></list></block></block><block s="doSetVar"><l>block</l><l>1</l></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>sprites.</l><block var="2"/><l>.</l><block var="1"/><l> = sprites.</l><block var="2"/><l>.</l><block var="1"/><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>x</l></block><l> + </l><l> - </l></block><block var="3"/><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="set %&apos;1&apos; of %&apos;2&apos; to %&apos;3&apos;" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">x<options>x&#xD;y</options></input><input type="%s">sprite</input><input type="%n">0</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Set </l><block var="1"/><l> of sprite "</l><block var="2"/><l>" to </l><block var="3"/></list></block></block><block s="doSetVar"><l>block</l><l>1</l></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>sprites.</l><block var="2"/><l>.</l><block var="1"/><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>x</l></block><l> = </l><l> = -(</l></block><block var="3"/><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>x</l></block><l>+240</l><l>+136</l></block><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block><block s="doSetVar"><l>block</l><l>0</l></block></script><scripts><script x="59" y="241.2"><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>sprites.</l><block var="2"/><l>.</l><block var="1"/><l> = sprites.</l><block var="2"/><l>.</l><block var="1"/><l></l><block var="3"/><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></scripts></block-definition><block-definition s="%&apos;1&apos; position of %&apos;2&apos;" type="reporter" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">x<options>x&#xD;y</options></input><input type="%s">sprite</input></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportJoinWords"><list><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>x</l></block><l>(sprites.</l><l>-(sprites.</l></block><block var="2"/><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>x</l></block><l>.x - 240)</l><l>.y - 136)</l></block></list></block></list></block></block></script></block-definition><block-definition s="direction of %&apos;1&apos;" type="reporter" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s">sprite</input></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportJoinWords"><list><l>sprites.</l><block var="1"/><l>.direction</l></list></block></list></block></block></script></block-definition><block-definition s="set size of %&apos;1&apos; to %&apos;2&apos; %" type="command" category="looks"><header></header><code></code><translations></translations><inputs><input type="%s">sprite</input><input type="%n">100</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Set size of sprite "</l><block var="1"/><l>" to </l><block var="2"/><l>%</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>sprites.</l><block var="1"/><l>.size = </l><block var="2"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><block var="1"/><l>:scale(sprites.</l><block var="1"/><l>.size)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="render sprite %&apos;1&apos; relative x %&apos;2&apos; y %&apos;3&apos;" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%n">0</input><input type="%n">0</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Render sprite "</l><block var="1"/><l>" at x:</l><block var="2"/><l>, y:</l><block var="3"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>sprites.</l><block var="1"/><l>.frames[sprites.</l><block var="1"/><l>.frame]:blit(sprites.</l><block var="1"/><l>.x + </l><block var="2"/><l>, sprites.</l><block var="1"/><l>.y - </l><block var="3"/><l>, sprites.</l><block var="1"/><l>.alpha)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="forever %&apos;end&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%ca"></input></inputs><script><block s="doIf"><block s="reportEquals"><block var="block"/><l>0</l></block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Forever</l></list></block></block></script></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>while true do</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block><block s="doAddToList"><l>    </l><block var="gap"/></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Keyboard check (Core)</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>buttons.read()</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block><block s="doIf"><block s="reportEquals"><block var="3d"/><l>1</l></block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Starting 3D Engine (Core)</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>amg.begin()</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>amg.mode2d(1)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block><block s="doRun"><block var="end"/><list></list></block><block s="doIf"><block s="reportEquals"><block var="3d"/><l>1</l></block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- 3D Camera update (Core)</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cam3d.eye(camera3d_1, { cameras3d[camera3d].eyeX + cameras3d[camera3d].x, cameras3d[camera3d].eyeY + cameras3d[camera3d].y, cameras3d[camera3d].eyeZ + cameras3d[camera3d].z})</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cam3d.position(camera3d_1, {cameras3d[camera3d].x, cameras3d[camera3d].y, cameras3d[camera3d].z})</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cam3d.set(camera3d_1)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Closing 3D engine (Core)</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>amg.mode2d(0)</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>amg.update()</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Screen update (Core)</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>screen.flip()</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block><block s="doDeleteFromList"><l>1</l><block var="gap"/></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>end</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="load %&apos;1&apos; sound %&apos;2&apos;" type="command" category="sound"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">mp3<options>mp3&#xD;wav&#xD;s3m&#xD;bgm</options></input><input type="%s"></input></inputs><script><block s="doIf"><block s="reportEquals"><block var="sounds"/><l>0</l></block><script><block s="doSetVar"><l>sounds</l><l>1</l></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><l>sounds={}</l><block s="reportUnicodeAsLetter"><l>10</l></block><block var="list"/></list></block></block></script></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Load </l><block var="1"/><l> sound "</l><block var="2"/><l>"</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>table.insert(sounds, </l><block var="2"/><l>)</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>sounds.</l><block var="2"/><l> = sound.load("sounds/</l><block var="2"/><l>.</l><block var="1"/><l>")</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="play %&apos;1&apos;" type="command" category="sound"><header></header><code></code><translations></translations><inputs><input type="%s">sound</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Play sound "</l><block var="1"/><l>"</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>sound.play(sounds.</l><block var="1"/><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="stop %&apos;1&apos;" type="command" category="sound"><header></header><code></code><translations></translations><inputs><input type="%s">sound</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Stop sound "</l><block var="1"/><l>"</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>sound.stop(sounds.</l><block var="1"/><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="create list %&apos;1&apos;" type="command" category="lists"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Create list "</l><block var="1"/><l>"</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><block var="1"/><l> = {}</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="add %&apos;1&apos; to list %&apos;2&apos;" type="command" category="lists"><header></header><code></code><translations></translations><inputs><input type="%s">thing</input><input type="%s"></input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Add </l><block var="1"/><l> to list "</l><block var="2"/><l>"</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>table.insert(</l><block var="2"/><l>, </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="delete %&apos;1&apos; of list %&apos;2&apos;" type="command" category="lists"><header></header><code></code><translations></translations><inputs><input type="%n">1</input><input type="%s"></input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Delete </l><block var="1"/><l> of list "</l><block var="2"/><l>"</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>table.remove(</l><block var="2"/><l>, </l><block var="1"/><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="insert %&apos;1&apos; at %&apos;2&apos; of list %&apos;3&apos;" type="command" category="lists"><header></header><code></code><translations></translations><inputs><input type="%s">thing</input><input type="%n">1</input><input type="%s"></input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Insert </l><block var="1"/><l> at </l><block var="2"/><l> of list "</l><block var="3"/><l>"</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>table.insert(</l><block var="3"/><l>, </l><block var="2"/><l>, </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="replace item %&apos;1&apos; of list %&apos;2&apos; with %&apos;3&apos;" type="command" category="lists"><header></header><code></code><translations></translations><inputs><input type="%n">1</input><input type="%s"></input><input type="%s">thing</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Replace item </l><block var="1"/><l> of list "</l><block var="2"/><l>" with </l><block var="3"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><block var="2"/><l>[</l><block var="1"/><l>] = </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="3"/><l><option>number</option></l></block><block s="reportIsA"><block var="3"/><l><option>list</option></l></block></block><block var="3"/><block s="reportJoinWords"><list><l>"</l><block var="3"/><l>"</l></list></block></block><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="wait %&apos;1&apos; seconds" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%n">5</input></inputs><script><block s="doIf"><block s="reportEquals"><block var="wait"/><l>0</l></block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><l>function wait(seconds)&#xD;  local start = os.time()&#xD;  repeat until os.time() &gt; start + seconds&#xD;end</l><block s="reportUnicodeAsLetter"><l>10</l></block><block var="list"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><l>-- Wait (Core)</l><block s="reportUnicodeAsLetter"><l>10</l></block><block var="list"/></list></block></block><block s="doSetVar"><l>wait</l><l>1</l></block></script></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Wait </l><block var="1"/><l> seconds</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>wait(</l><block var="1"/><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="wait until %&apos;1&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%b"></input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Wait until </l><block var="1"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>while </l><custom-block s="not %b"><block var="1"/></custom-block><l> do end</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="draw line x1 %&apos;1&apos; y1 %&apos;2&apos; | x2 %&apos;3&apos; y2 %&apos;4&apos; | color %&apos;5&apos; %&apos;6&apos; %&apos;7&apos;" type="command" category="pen"><header></header><code></code><translations></translations><inputs><input type="%n">0</input><input type="%n">0</input><input type="%n">5</input><input type="%n">5</input><input type="%n">255</input><input type="%n">0</input><input type="%n">0</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Draw line | x1: </l><block var="1"/><l>, y1: </l><block var="2"/><l> | x2: </l><block var="3"/><l>, y2: </l><block var="4"/><l> | color: (</l><block var="5"/><l>, </l><block var="6"/><l>, </l><block var="7"/><l>) |</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>draw.line(</l><block var="1"/><l> + 240, -(</l><block var="2"/><l>) + 136, </l><block var="3"/><l> + 240, -(</l><block var="4"/><l>) + 136,</l><l> color.new(</l><block var="5"/><l>, </l><block var="6"/><l>, </l><block var="7"/><l>))</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="draw gradient line | x1 %&apos;1&apos; y1 %&apos;2&apos; | x2 %&apos;3&apos; y2 %&apos;4&apos; | color1 %&apos;5&apos; %&apos;6&apos; %&apos;7&apos; color2 %&apos;8&apos; %&apos;9&apos; %&apos;10&apos;" type="command" category="pen"><header></header><code></code><translations></translations><inputs><input type="%n">0</input><input type="%n">0</input><input type="%n">0</input><input type="%n">0</input><input type="%n">255</input><input type="%n">0</input><input type="%n">0</input><input type="%n">255</input><input type="%n">0</input><input type="%n">0</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Draw gradient line | x1: </l><block var="1"/><l>, y1: </l><block var="2"/><l> | x2: </l><block var="3"/><l>, y2: </l><block var="4"/><l> | color1: (</l><block var="5"/><l>, </l><block var="6"/><l>, </l><block var="7"/><l>), color2: (</l><block var="8"/><l>, </l><block var="9"/><l>, </l><block var="10"/><l>) |</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>draw.gradline(</l><block var="1"/><l> + 240, -(</l><block var="2"/><l>) + 136, </l><block var="3"/><l> + 240, -(</l><block var="4"/><l>) + 136, </l><l>color.new(</l><block var="5"/><l>, </l><block var="6"/><l>, </l><block var="7"/><l>), color.new(</l><block var="8"/><l>, </l><block var="9"/><l>, </l><block var="10"/><l>))</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="draw %&apos;filled&apos; rectangle at x %&apos;1&apos; y %&apos;2&apos; | width %&apos;3&apos; height %&apos;4&apos; | color %&apos;5&apos; %&apos;6&apos; %&apos;7&apos;" type="command" category="pen"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">filled<options>filled&#xD;unfilled</options></input><input type="%n">0</input><input type="%n">0</input><input type="%n">5</input><input type="%n">5</input><input type="%n">255</input><input type="%n">0</input><input type="%n">0</input></inputs><script><block s="doIfElse"><block s="reportEquals"><block var="filled"/><l>filled</l></block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Draw filled rectangle | x: </l><block var="1"/><l>, y: </l><block var="2"/><l> | width: </l><block var="3"/><l>, height: </l><block var="4"/><l> | color: (</l><block var="5"/><l>, </l><block var="6"/><l>, </l><block var="7"/><l>) |</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>draw.fillrect(</l><block var="1"/><l> + 240, -(</l><block var="2"/><l>) + 136, </l><block var="3"/><l>, </l><block var="4"/><l>, color.new(</l><block var="5"/><l>, </l><block var="6"/><l>, </l><block var="7"/><l>))</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Draw unfilled rectangle at | x: </l><block var="1"/><l>, y: </l><block var="2"/><l> | width: </l><block var="3"/><l>, height: </l><block var="4"/><l> | color: (</l><block var="5"/><l>, </l><block var="6"/><l>, </l><block var="7"/><l>) |</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>draw.rect(</l><block var="1"/><l> + 240, -(</l><block var="2"/><l>) + 136, </l><block var="3"/><l>, </l><block var="4"/><l>, color.new(</l><block var="5"/><l>, </l><block var="6"/><l>, </l><block var="7"/><l>))</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block></script></block-definition><block-definition s="draw gradient rectangle at x %&apos;1&apos; y %&apos;2&apos; | width %&apos;3&apos; height %&apos;4&apos; | color1 %&apos;5&apos; %&apos;6&apos; %&apos;7&apos; color2 %&apos;8&apos; %&apos;9&apos; %&apos;10&apos; color3 %&apos;11&apos; %&apos;12&apos; %&apos;13&apos; color4 %&apos;14&apos; %&apos;15&apos; %&apos;16&apos;" type="command" category="pen"><header></header><code></code><translations></translations><inputs><input type="%n">0</input><input type="%n">0</input><input type="%n">5</input><input type="%n">5</input><input type="%n">255</input><input type="%n">0</input><input type="%n">0</input><input type="%n">255</input><input type="%n">0</input><input type="%n">0</input><input type="%n">255</input><input type="%n">0</input><input type="%n">0</input><input type="%n">255</input><input type="%n">0</input><input type="%n">0</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Draw gradient rectangle | x: </l><block var="1"/><l>, y: </l><block var="2"/><l> | width: </l><block var="3"/><l>, height: </l><block var="4"/><l> | color1: (</l><block var="5"/><l>, </l><block var="6"/><l>, </l><block var="7"/><l>), color2: (</l><block var="8"/><l>, </l><block var="9"/><l>, </l><block var="10"/><l>), color3: (</l><block var="11"/><l>, </l><block var="12"/><l>, </l><block var="13"/><l>), color4: (</l><block var="14"/><l>, </l><block var="15"/><l>, </l><block var="16"/><l>) |</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>draw.gradrect(</l><block var="1"/><l> + 240, -(</l><block var="2"/><l>) + 136, </l><block var="3"/><l>, </l><block var="4"/><l>, color.new(</l><block var="5"/><l>, </l><block var="6"/><l>, </l><block var="7"/><l>), color.new(</l><block var="8"/><l>, </l><block var="9"/><l>, </l><block var="10"/><l>), color.new(</l><block var="11"/><l>, </l><block var="12"/><l>, </l><block var="13"/><l>), color.new(</l><block var="14"/><l>, </l><block var="15"/><l>, </l><block var="16"/><l>))</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="draw gradient rectangle at x %&apos;1&apos; y %&apos;2&apos; | width %&apos;3&apos; height %&apos;4&apos; | color1 %&apos;5&apos; %&apos;6&apos; %&apos;7&apos; color2 %&apos;8&apos; %&apos;9&apos; %&apos;10&apos; %&apos;11&apos;" type="command" category="pen"><header></header><code></code><translations></translations><inputs><input type="%n">0</input><input type="%n">0</input><input type="%n">5</input><input type="%n">5</input><input type="%n">255</input><input type="%n">0</input><input type="%n">0</input><input type="%n">255</input><input type="%n">0</input><input type="%n">0</input><input type="%s" readonly="true">HORIZONTAL<options>HORIZONTAL&#xD;VERTICAL&#xD;DIAGONAL&#xD;DOUBLEHOR&#xD;DOUBLEVER</options></input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Draw gradient rectangle | x: </l><block var="1"/><l>, y: </l><block var="2"/><l> | width: </l><block var="3"/><l>, height: </l><block var="4"/><l> | color: (</l><block var="5"/><l>, </l><block var="6"/><l>, </l><block var="7"/><l>), color2: (</l><block var="8"/><l>, </l><block var="9"/><l>, </l><block var="10"/><l>) with </l><block var="11"/><l> type |</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>draw.gradrect(</l><block var="1"/><l> + 240, -(</l><block var="2"/><l>) + 136, </l><block var="3"/><l>, </l><block var="4"/><l>, color.new(</l><block var="5"/><l>, </l><block var="6"/><l>, </l><block var="7"/><l>), color.new(</l><block var="8"/><l>, </l><block var="9"/><l>, </l><block var="10"/><l>), __</l><block var="11"/><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="draw filled triangle x1 %&apos;1&apos; y1 %&apos;2&apos; | x2 %&apos;3&apos; y2 %&apos;4&apos; | x3 %&apos;5&apos; y3 %&apos;6&apos; | color %&apos;7&apos; %&apos;8&apos; %&apos;9&apos;" type="command" category="pen"><header></header><code></code><translations></translations><inputs><input type="%n">0</input><input type="%n">0</input><input type="%n">5</input><input type="%n">5</input><input type="%n">10</input><input type="%n">10</input><input type="%n">255</input><input type="%n">0</input><input type="%n">0</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Draw filled triangle | x1: </l><block var="1"/><l>, y1: </l><block var="2"/><l> | x2: </l><block var="3"/><l>, y2: </l><block var="4"/><l> | x3: </l><block var="5"/><l>, y3: </l><block var="6"/><l> | color: (</l><block var="7"/><l>, </l><block var="8"/><l>, </l><block var="9"/><l>) |</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>draw.filltriangle(</l><block var="1"/><l> + 240, -(</l><block var="2"/><l>) + 136, </l><block var="3"/><l> + 240, -(</l><block var="4"/><l>) + 136, </l><block var="5"/><l> + 240, -(</l><block var="6"/><l>) + 136, color.new(</l><block var="7"/><l>, </l><block var="8"/><l>, </l><block var="9"/><l>))</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="draw gradient triangle x1 %&apos;1&apos; y1 %&apos;2&apos; | x2 %&apos;3&apos; y2 %&apos;4&apos; | x3 %&apos;5&apos; y3 %&apos;6&apos; | color1 %&apos;7&apos; %&apos;8&apos; %&apos;9&apos; color2 %&apos;10&apos; %&apos;11&apos; %&apos;12&apos; color3 %&apos;13&apos; %&apos;14&apos; %&apos;15&apos;" type="command" category="pen"><header></header><code></code><translations></translations><inputs><input type="%n">0</input><input type="%n">0</input><input type="%n">5</input><input type="%n">5</input><input type="%n">10</input><input type="%n">10</input><input type="%n">255</input><input type="%n">0</input><input type="%n">0</input><input type="%n">255</input><input type="%n">0</input><input type="%n">0</input><input type="%n">255</input><input type="%n">0</input><input type="%n">0</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Draw gradient triangle | x1: </l><block var="1"/><l>, y1: </l><block var="2"/><l> | x2: </l><block var="3"/><l>, y2: </l><block var="4"/><l> | x3: </l><block var="5"/><l>, y3: </l><block var="6"/><l> | color1: (</l><block var="7"/><l>, </l><block var="8"/><l>, </l><block var="9"/><l>), color2: (</l><block var="10"/><l>, </l><block var="11"/><l>, </l><block var="12"/><l>), color3: (</l><block var="13"/><l>, </l><block var="14"/><l>, </l><block var="15"/><l>) |</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>draw.gradtriangle(</l><block var="1"/><l> + 240, -(</l><block var="2"/><l>) + 136, </l><block var="3"/><l> + 240, -(</l><block var="4"/><l>) + 136, </l><block var="5"/><l> + 240, -(</l><block var="6"/><l>) + 136, color.new(</l><block var="7"/><l>, </l><block var="8"/><l>, </l><block var="9"/><l>), color.new(</l><block var="10"/><l>, </l><block var="11"/><l>, </l><block var="12"/><l>), color.new(</l><block var="13"/><l>, </l><block var="14"/><l>, </l><block var="15"/><l>))</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="draw circle at x %&apos;1&apos; y %&apos;2&apos; | radius %&apos;3&apos; | color %&apos;4&apos; %&apos;5&apos; %&apos;6&apos; | number of triangles %&apos;7&apos;" type="command" category="pen"><header></header><code></code><translations></translations><inputs><input type="%n">0</input><input type="%n">0</input><input type="%n">5</input><input type="%n">255</input><input type="%n">0</input><input type="%n">0</input><input type="%n">30</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Draw filled circle | x: </l><block var="1"/><l>, y: </l><block var="2"/><l> | radius: </l><block var="3"/><l> | color: (</l><block var="4"/><l>, </l><block var="5"/><l>, </l><block var="6"/><l>) | number of triangles: </l><block var="7"/><l> |</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>draw.circle(</l><block var="1"/><l> + 240, -(</l><block var="2"/><l>) + 136, </l><block var="3"/><l>, </l><l>color.new(</l><block var="4"/><l>, </l><block var="5"/><l>, </l><block var="6"/><l>), </l><block var="7"/><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="draw gradient circle at x %&apos;1&apos; y %&apos;2&apos; | radius %&apos;3&apos; | color1 %&apos;4&apos; %&apos;5&apos; %&apos;6&apos; color2 %&apos;7&apos; %&apos;8&apos; %&apos;9&apos; | number of triangles %&apos;10&apos;" type="command" category="pen"><header></header><code></code><translations></translations><inputs><input type="%n">0</input><input type="%n">0</input><input type="%n">5</input><input type="%n">255</input><input type="%n">0</input><input type="%n">0</input><input type="%n">255</input><input type="%n">0</input><input type="%n">0</input><input type="%n">30</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Draw gradient circle | x: </l><block var="1"/><l>, y: </l><block var="2"/><l> | radius: </l><block var="3"/><l> | color1: (</l><block var="4"/><l>, </l><block var="5"/><l>, </l><block var="6"/><l>), color2: (</l><block var="7"/><l>, </l><block var="8"/><l>, </l><block var="9"/><l>) | number of triangles: </l><block var="10"/><l> |</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>draw.gradcircle(</l><block var="1"/><l> + 240, -(</l><block var="2"/><l>) + 136, </l><block var="3"/><l>, color.new(</l><block var="4"/><l>, </l><block var="5"/><l>, </l><block var="6"/><l>), color.new(</l><block var="7"/><l>, </l><block var="8"/><l>, </l><block var="9"/><l>), </l><block var="10"/><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="load 3d model %&apos;1&apos; with %&apos;2&apos; frames $globe $arrowDown" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%n">5</input></inputs><script><block s="doIf"><block s="reportEquals"><block var="3d"/><l>0</l></block><script><block s="doSetVar"><l>3d</l><l>1</l></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><l>models3d = {}</l><block s="reportUnicodeAsLetter"><l>10</l></block><block var="list"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><l>cameras3d = {}</l><block s="reportUnicodeAsLetter"><l>10</l></block><block var="list"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><l>camera3d = 0</l><block s="reportUnicodeAsLetter"><l>10</l></block><block var="list"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><l>camera3d_1 = cam3d.new()</l><block s="reportUnicodeAsLetter"><l>10</l></block><block var="list"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><l>amg.init(__8888)</l><block s="reportUnicodeAsLetter"><l>10</l></block><block var="list"/></list></block></block></script></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Load 3d model "</l><block var="1"/><l>" with </l><block var="2"/><l> frames</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>table.insert(models3d,</l><block var="1"/><l>)</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>models3d.</l><block var="1"/><l> = {models={</l></list></block></block><block s="doFor"><l>i</l><l>1</l><block var="2"/><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><l>model3d.load("3d/</l><block var="1"/><l>/</l><block var="i"/><l>.obj"), </l></list></block></block></script></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><l>}, x=0, y=0, z=0, directionX=0, directionY=0, directionZ=0, alpha=255, frame=1, length=</l><block var="2"/><l>}</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="move 3d %&apos;1&apos; by %&apos;2&apos; steps by %&apos;4&apos; %&apos;3&apos; direction $globe" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s">model</input><input type="%n">10</input><input type="%s">self<options>self</options></input><input type="%s" readonly="true">X<options>X&#xD;Y&#xD;Z</options></input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Move 3d model "</l><block var="1"/><l>" by </l><block var="2"/><l> steps by "</l><block var="4"/><l>", </l><block var="3"/><l> direction</l></list></block></block><block s="doIfElse"><block s="reportEquals"><block var="3"/><l>X</l></block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>models3d.</l><block var="1"/><l>.z = models3d.</l><block var="1"/><l>.z + (</l><custom-block s="%n × %n"><block var="2"/><custom-block s="%s of %n"><l>sin</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $globe"><l>x</l><block s="reportIfElse"><block s="reportEquals"><block var="4"/><l>self</l></block><block var="1"/><block var="4"/></block></custom-block></custom-block></custom-block></custom-block><l>)</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>models3d.</l><block var="1"/><l>.y = models3d.</l><block var="1"/><l>.y + (</l><custom-block s="%n × %n"><block var="2"/><custom-block s="%s of %n"><l>cos</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $globe"><l>x</l><block s="reportIfElse"><block s="reportEquals"><block var="4"/><l>self</l></block><block var="1"/><block var="4"/></block></custom-block></custom-block></custom-block></custom-block><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="3"/><l>Y</l></block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>models3d.</l><block var="1"/><l>.x = models3d.</l><block var="1"/><l>.x + (</l><custom-block s="%n × %n"><block var="2"/><custom-block s="%s of %n"><l>sin</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $globe"><l>y</l><block s="reportIfElse"><block s="reportEquals"><block var="4"/><l>self</l></block><block var="1"/><block var="4"/></block></custom-block></custom-block></custom-block></custom-block><l>)</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>models3d.</l><block var="1"/><l>.z = models3d.</l><block var="1"/><l>.z + (</l><custom-block s="%n × %n"><block var="2"/><custom-block s="%s of %n"><l>cos</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $globe"><l>y</l><block s="reportIfElse"><block s="reportEquals"><block var="4"/><l>self</l></block><block var="1"/><block var="4"/></block></custom-block></custom-block></custom-block></custom-block><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>models3d.</l><block var="1"/><l>.y = models3d.</l><block var="1"/><l>.y + (</l><custom-block s="%n × %n"><block var="2"/><custom-block s="%s of %n"><l>sin</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $globe"><l>z</l><block s="reportIfElse"><block s="reportEquals"><block var="4"/><l>self</l></block><block var="1"/><block var="4"/></block></custom-block></custom-block></custom-block></custom-block><l>)</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>models3d.</l><block var="1"/><l>.x = models3d.</l><block var="1"/><l>.x + (</l><custom-block s="%n × %n"><block var="2"/><custom-block s="%s of %n"><l>cos</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $globe"><l>z</l><block s="reportIfElse"><block s="reportEquals"><block var="4"/><l>self</l></block><block var="1"/><block var="4"/></block></custom-block></custom-block></custom-block></custom-block><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block></script></block></script></block-definition><block-definition s="turn 3d %&apos;1&apos; %&apos;2&apos; by %&apos;3&apos; degrees by %&apos;4&apos; direction $globe" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s">model</input><input type="%s" readonly="true">↻<options>↻&#xD;↺</options></input><input type="%n">15</input><input type="%s" readonly="true">X<options>X&#xD;Y&#xD;Z</options></input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Turn 3d model "</l><block var="1"/><l>" </l><block var="2"/><l> by </l><block var="3"/><l> by </l><block var="4"/><l> direction</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><custom-block s="%s direction of 3d %s $globe"><block var="4"/><block var="1"/></custom-block><l> = </l><custom-block s="%s direction of 3d %s $globe"><block var="4"/><block var="1"/></custom-block><block s="reportIfElse"><block s="reportEquals"><block var="2"/><l>↻</l></block><l> + </l><l> - </l></block><block var="3"/><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>model3d.rotation(models3d.</l><block var="1"/><l>.models[models3d.</l><block var="1"/><l>.frame], 1, {</l><custom-block s="%s direction of 3d %s $globe"><l>x</l><block var="1"/></custom-block><l>, </l><custom-block s="%s direction of 3d %s $globe"><l>y</l><block var="1"/></custom-block><l>, </l><custom-block s="%s direction of 3d %s $globe"><l>z</l><block var="1"/></custom-block><l>})</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="point 3d %&apos;1&apos; in direction %&apos;2&apos; by %&apos;3&apos; direction $globe" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s">model</input><input type="%n">0</input><input type="%s" readonly="true">X<options>X&#xD;Y&#xD;Z</options></input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Point 3d model "</l><block var="1"/><l>" in direction </l><block var="2"/><l> by </l><block var="3"/><l> direction</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><custom-block s="%s direction of 3d %s $globe"><block var="3"/><block var="1"/></custom-block><l> = </l><block var="2"/><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>model3d.rotation(models3d.</l><block var="1"/><l>.models[models3d.</l><block var="1"/><l>.frame], 1, {</l><custom-block s="%s direction of 3d %s $globe"><l>x</l><block var="1"/></custom-block><l>, </l><custom-block s="%s direction of 3d %s $globe"><l>y</l><block var="1"/></custom-block><l>, </l><custom-block s="%s direction of 3d %s $globe"><l>z</l><block var="1"/></custom-block><l>})</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="go 3d %&apos;1&apos; to x: %&apos;2&apos; y: %&apos;3&apos; z: %&apos;4&apos; $globe" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s">model</input><input type="%n">0</input><input type="%n">0</input><input type="%n">0</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Go 3d model "</l><block var="1"/><l>" to x:</l><block var="2"/><l>, y:</l><block var="3"/><l>, z:</l><block var="4"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>models3d.</l><block var="1"/><l>.x = </l><block var="2"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>models3d.</l><block var="1"/><l>.y = </l><block var="3"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>models3d.</l><block var="1"/><l>.z = </l><block var="4"/><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="change %&apos;1&apos; of 3d %&apos;2&apos; by %&apos;3&apos; $globe" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">x<options>x&#xD;y&#xD;z</options></input><input type="%s">model</input><input type="%n">10</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Change </l><block var="1"/><l> of 3d model "</l><block var="2"/><l>" by </l><block var="3"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>models3d.</l><block var="2"/><l>.</l><block var="1"/><l> = models3d.</l><block var="2"/><l>.</l><block var="1"/><l> + </l><block var="3"/><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="set %&apos;1&apos; of 3d %&apos;2&apos; to %&apos;3&apos; $globe" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">x<options>x&#xD;y&#xD;z</options></input><input type="%s">model</input><input type="%n">0</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Set </l><block var="1"/><l> of 3d model "</l><block var="2"/><l>" to </l><block var="3"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>models3d.</l><block var="2"/><l>.</l><block var="1"/><l> = </l><block var="3"/><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="%&apos;1&apos; position of 3d %&apos;2&apos; $globe" type="reporter" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">x<options>x&#xD;y&#xD;z</options></input><input type="%s">model</input></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportJoinWords"><list><l>models3d.</l><block var="2"/><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>x</l></block><l>.x</l><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>y</l></block><l>.y</l><l>.z</l></block></block></list></block></list></block></block></script></block-definition><block-definition s="%&apos;1&apos; direction of 3d %&apos;2&apos; $globe" type="reporter" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">x<options>x&#xD;y&#xD;z</options></input><input type="%s">model</input></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportJoinWords"><list><l>models3d.</l><block var="2"/><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>x</l></block><l>.directionX</l><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>y</l></block><l>.directionY</l><l>.directionZ</l></block></block></list></block></list></block></block></script></block-definition><block-definition s="render 3d model %&apos;1&apos; with %&apos;2&apos; $globe" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s" readonly="true">BACK-FACE CULLING<options>BACK-FACE CULLING&#xD;SEQUENTIAL RENDER&#xD;FULL RENDER</options></input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Render 3d model "</l><block var="1"/><l>" with </l><block var="2"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>model3d.render(models3d.</l><block var="1"/><l>.models[models3d.</l><block var="1"/><l>.frame], </l><block s="reportIfElse"><block s="reportEquals"><block var="2"/><l>BACK-FACE CULLING</l></block><l>0</l><block s="reportIfElse"><block s="reportEquals"><block var="2"/><l>SEQUENTIAL RENDER</l></block><l>1</l><l>2</l></block></block><l>)</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>model3d.position(models3d.</l><block var="1"/><l>.models[models3d.</l><block var="1"/><l>.frame], 1, {models3d.</l><block var="1"/><l>.x, models3d.</l><block var="1"/><l>.y, models3d.</l><block var="1"/><l>.z})</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="create 3d camera %&apos;1&apos; $camera $arrowDown" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doIf"><block s="reportEquals"><block var="3d"/><l>0</l></block><script><block s="doSetVar"><l>3d</l><l>1</l></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><l>models3d = {}</l><block s="reportUnicodeAsLetter"><l>10</l></block><block var="list"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><l>cameras3d = {}</l><block s="reportUnicodeAsLetter"><l>10</l></block><block var="list"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><l>camera3d = 0</l><block s="reportUnicodeAsLetter"><l>10</l></block><block var="list"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><l>camera3d_1 = cam3d.new()</l><block s="reportUnicodeAsLetter"><l>10</l></block><block var="list"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><l>amg.init(__8888)</l><block s="reportUnicodeAsLetter"><l>10</l></block><block var="list"/></list></block></block></script></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Create 3d camera "</l><block var="1"/><l>"</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>table.insert(cameras3d,</l><block var="1"/><l>)</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l> = {x=0, y=0, z=0, directionX=0, directionY=0, eyeX=math.sin(math.rad(0)) * math.cos(math.rad(0)), eyeZ=math.cos(math.rad(0)) * math.cos(math.rad(0)), eyeY=math.sin(math.rad(0)), fov=0}</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="move 3d %&apos;1&apos; %&apos;2&apos; steps by %&apos;4&apos; %&apos;3&apos; $camera" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s">camera</input><input type="%n">10</input><input type="%s">self<options>self</options></input><input type="%s" readonly="true">X<options>X&#xD;Y&#xD;XY</options></input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Move 3d camera "</l><block var="1"/><l>" by </l><block var="2"/><l> steps by "</l><block var="4"/><l>", </l><block var="3"/><l> direction</l></list></block></block><block s="doIfElse"><block s="reportEquals"><block var="3"/><l>X</l></block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.z = cameras3d.</l><block var="1"/><l>.z + </l><custom-block s="%n × %n"><block var="2"/><custom-block s="%s of %n"><l>sin</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>x</l><block s="reportIfElse"><block s="reportEquals"><block var="4"/><l>self</l></block><block var="1"/><block var="4"/></block></custom-block></custom-block></custom-block></custom-block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.y = cameras3d.</l><block var="1"/><l>.y + </l><custom-block s="%n × %n"><block var="2"/><custom-block s="%s of %n"><l>sin</l><custom-block s="%s of %n"><l>cos</l><custom-block s="%s direction of 3d %s $camera"><l>x</l><block s="reportIfElse"><block s="reportEquals"><block var="4"/><l>self</l></block><block var="1"/><block var="4"/></block></custom-block></custom-block></custom-block></custom-block><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="3"/><l>Y</l></block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.y = cameras3d.</l><block var="1"/><l>.y + </l><custom-block s="%n × %n"><block var="2"/><custom-block s="%s of %n"><l>sin</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>y</l><block s="reportIfElse"><block s="reportEquals"><block var="4"/><l>self</l></block><block var="1"/><block var="4"/></block></custom-block></custom-block></custom-block></custom-block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.x = cameras3d.</l><block var="1"/><l>.x + </l><custom-block s="%n × %n"><block var="2"/><custom-block s="%s of %n"><l>sin</l><custom-block s="%s of %n"><l>cos</l><custom-block s="%s direction of 3d %s $camera"><l>y</l><block s="reportIfElse"><block s="reportEquals"><block var="4"/><l>self</l></block><block var="1"/><block var="4"/></block></custom-block></custom-block></custom-block></custom-block><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.x = cameras3d.</l><block var="1"/><l>.x + </l><custom-block s="%n × %n"><block var="2"/><custom-block s="%n × %n"><custom-block s="%s of %n"><l>sin</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>x</l><block s="reportIfElse"><block s="reportEquals"><block var="4"/><l>self</l></block><block var="1"/><block var="4"/></block></custom-block></custom-block></custom-block><custom-block s="%s of %n"><l>cos</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>y</l><block s="reportIfElse"><block s="reportEquals"><block var="4"/><l>self</l></block><block var="1"/><block var="4"/></block></custom-block></custom-block></custom-block></custom-block></custom-block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.y = cameras3d.</l><block var="1"/><l>.y + </l><custom-block s="%n × %n"><block var="2"/><custom-block s="%s of %n"><l>sin</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>y</l><block s="reportIfElse"><block s="reportEquals"><block var="4"/><l>self</l></block><block var="1"/><block var="4"/></block></custom-block></custom-block></custom-block></custom-block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.z = cameras3d.</l><block var="1"/><l>.z + </l><custom-block s="%n × %n"><block var="2"/><custom-block s="%n × %n"><custom-block s="%s of %n"><l>cos</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>x</l><block s="reportIfElse"><block s="reportEquals"><block var="4"/><l>self</l></block><block var="1"/><block var="4"/></block></custom-block></custom-block></custom-block><custom-block s="%s of %n"><l>cos</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>y</l><block s="reportIfElse"><block s="reportEquals"><block var="4"/><l>self</l></block><block var="1"/><block var="4"/></block></custom-block></custom-block></custom-block></custom-block></custom-block><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block></script></block></script></block-definition><block-definition s="turn 3d %&apos;1&apos; %&apos;2&apos; %&apos;3&apos; degrees by %&apos;4&apos; $camera" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s">camera</input><input type="%s" readonly="true">↻<options>↻&#xD;↺</options></input><input type="%n">15</input><input type="%s" readonly="true">X<options>X&#xD;Y</options></input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Turn 3d camera "</l><block var="1"/><l>" </l><block var="2"/><l> by </l><block var="3"/><l> by </l><block var="4"/><l> direction</l></list></block></block><block s="doIfElse"><block s="reportEquals"><block var="2"/><l>↻</l></block><script><block s="doIfElse"><block s="reportEquals"><block var="4"/><l>X</l></block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><custom-block s="%s direction of 3d %s $camera"><l>x</l><block var="1"/></custom-block><l> = </l><custom-block s="%n - %n"><custom-block s="%s direction of 3d %s $camera"><l>x</l><block var="1"/></custom-block><block var="3"/></custom-block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.eyeX = </l><custom-block s="%n × %n"><custom-block s="%s of %n"><l>sin</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>x</l><block var="1"/></custom-block></custom-block></custom-block><custom-block s="%s of %n"><l>cos</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>y</l><block var="1"/></custom-block></custom-block></custom-block></custom-block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.eyeZ = </l><custom-block s="%n × %n"><custom-block s="%s of %n"><l>cos</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>x</l><block var="1"/></custom-block></custom-block></custom-block><custom-block s="%s of %n"><l>cos</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>y</l><block var="1"/></custom-block></custom-block></custom-block></custom-block><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><custom-block s="%s direction of 3d %s $camera"><l>y</l><block var="1"/></custom-block><l> = </l><custom-block s="%n - %n"><custom-block s="%s direction of 3d %s $camera"><l>y</l><block var="1"/></custom-block><block var="3"/></custom-block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.eyeX = </l><custom-block s="%n × %n"><custom-block s="%s of %n"><l>sin</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>x</l><block var="1"/></custom-block></custom-block></custom-block><custom-block s="%s of %n"><l>cos</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>y</l><block var="1"/></custom-block></custom-block></custom-block></custom-block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.eyeZ = </l><custom-block s="%n × %n"><custom-block s="%s of %n"><l>cos</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>x</l><block var="1"/></custom-block></custom-block></custom-block><custom-block s="%s of %n"><l>cos</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>y</l><block var="1"/></custom-block></custom-block></custom-block></custom-block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.eyeY = </l><custom-block s="%s of %n"><l>sin</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>y</l><block var="1"/></custom-block></custom-block></custom-block><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="4"/><l>X</l></block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><custom-block s="%s direction of 3d %s $camera"><l>x</l><block var="1"/></custom-block><l> = </l><custom-block s="%n + %n"><custom-block s="%s direction of 3d %s $camera"><l>x</l><block var="1"/></custom-block><block var="3"/></custom-block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.eyeX = </l><custom-block s="%n × %n"><custom-block s="%s of %n"><l>sin</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>x</l><block var="1"/></custom-block></custom-block></custom-block><custom-block s="%s of %n"><l>cos</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>y</l><block var="1"/></custom-block></custom-block></custom-block></custom-block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.eyeZ = </l><custom-block s="%n × %n"><custom-block s="%s of %n"><l>cos</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>x</l><block var="1"/></custom-block></custom-block></custom-block><custom-block s="%s of %n"><l>cos</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>y</l><block var="1"/></custom-block></custom-block></custom-block></custom-block><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><custom-block s="%s direction of 3d %s $camera"><l>y</l><block var="1"/></custom-block><l> = </l><custom-block s="%n + %n"><custom-block s="%s direction of 3d %s $camera"><l>y</l><block var="1"/></custom-block><block var="3"/></custom-block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.eyeX = </l><custom-block s="%n × %n"><custom-block s="%s of %n"><l>sin</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>x</l><block var="1"/></custom-block></custom-block></custom-block><custom-block s="%s of %n"><l>cos</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>y</l><block var="1"/></custom-block></custom-block></custom-block></custom-block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.eyeZ = </l><custom-block s="%n × %n"><custom-block s="%s of %n"><l>cos</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>x</l><block var="1"/></custom-block></custom-block></custom-block><custom-block s="%s of %n"><l>cos</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>y</l><block var="1"/></custom-block></custom-block></custom-block></custom-block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.eyeY = </l><custom-block s="%s of %n"><l>sin</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>y</l><block var="1"/></custom-block></custom-block></custom-block><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block></script></block></script></block-definition><block-definition s="point 3d %&apos;1&apos; in direction %&apos;2&apos; by %&apos;3&apos; $camera" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s">camera</input><input type="%n">0</input><input type="%s" readonly="true">X<options>X&#xD;Y</options></input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Point 3d camera "</l><block var="1"/><l>" in direction </l><block var="2"/><l> by </l><block var="3"/><l> direction</l></list></block></block><block s="doIfElse"><block s="reportEquals"><block var="3"/><l>X</l></block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><custom-block s="%s direction of 3d %s $camera"><l>x</l><block var="1"/></custom-block><l> = </l><block var="2"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.eyeX = </l><custom-block s="%n × %n"><custom-block s="%s of %n"><l>sin</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>x</l><block var="1"/></custom-block></custom-block></custom-block><custom-block s="%s of %n"><l>cos</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>y</l><block var="1"/></custom-block></custom-block></custom-block></custom-block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.eyeZ = </l><custom-block s="%n × %n"><custom-block s="%s of %n"><l>cos</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>x</l><block var="1"/></custom-block></custom-block></custom-block><custom-block s="%s of %n"><l>cos</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>y</l><block var="1"/></custom-block></custom-block></custom-block></custom-block><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><custom-block s="%s direction of 3d %s $camera"><l>y</l><block var="1"/></custom-block><l> = </l><block var="2"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.eyeX = </l><custom-block s="%n × %n"><custom-block s="%s of %n"><l>sin</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>x</l><block var="1"/></custom-block></custom-block></custom-block><custom-block s="%s of %n"><l>cos</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>y</l><block var="1"/></custom-block></custom-block></custom-block></custom-block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.eyeZ = </l><custom-block s="%n × %n"><custom-block s="%s of %n"><l>cos</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>x</l><block var="1"/></custom-block></custom-block></custom-block><custom-block s="%s of %n"><l>cos</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>y</l><block var="1"/></custom-block></custom-block></custom-block></custom-block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.eyeY = </l><custom-block s="%s of %n"><l>sin</l><custom-block s="%s of %n"><l>rad</l><custom-block s="%s direction of 3d %s $camera"><l>y</l><block var="1"/></custom-block></custom-block></custom-block><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block></script></block-definition><block-definition s="go 3d %&apos;1&apos; to x: %&apos;2&apos; y: %&apos;3&apos; z: %&apos;4&apos; $camera" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s">camera</input><input type="%n">0</input><input type="%n">0</input><input type="%n">0</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Go 3d camera "</l><block var="1"/><l>" to x:</l><block var="2"/><l>, y:</l><block var="3"/><l>, z:</l><block var="4"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.x = </l><block var="2"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.y = </l><block var="3"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.z = </l><block var="4"/><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="change %&apos;1&apos; of 3d %&apos;2&apos; by %&apos;3&apos; $camera" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">x<options>x&#xD;y&#xD;z</options></input><input type="%s">camera</input><input type="%n">10</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Change </l><block var="1"/><l> of 3d camera "</l><block var="2"/><l>" by </l><block var="3"/></list></block></block><block s="doIfElse"><block s="reportEquals"><block var="1"/><l>x</l></block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="2"/><l>.x = cameras3d.</l><block var="2"/><l>.x +</l><block var="3"/><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="1"/><l>y</l></block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="2"/><l>.y = cameras3d.</l><block var="2"/><l>.y +</l><block var="3"/><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="2"/><l>.z = cameras3d.</l><block var="2"/><l>.z +</l><block var="3"/><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block></script></block></script></block-definition><block-definition s="set %&apos;1&apos; of 3d %&apos;2&apos; to %&apos;3&apos; $camera" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">x<options>x&#xD;y&#xD;z</options></input><input type="%s">camera</input><input type="%n">0</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Set </l><block var="1"/><l> of 3d camera "</l><block var="2"/><l>" to </l><block var="3"/></list></block></block><block s="doIfElse"><block s="reportEquals"><block var="1"/><l>x</l></block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="2"/><l>.x = </l><block var="3"/><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="1"/><l>y</l></block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="2"/><l>.y = </l><block var="3"/><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="2"/><l>.z = </l><block var="3"/><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block></script></block></script></block-definition><block-definition s="set 3d %&apos;1&apos; FOV to %&apos;2&apos; $camera" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s">camera</input><input type="%n">70</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Set 3d camera "</l><block var="1"/><l>" FOV to </l><block var="2"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.fov = </l><block var="2"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>amg.perspective(cameras3d.</l><block var="1"/><l>.fov)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="change 3d %&apos;1&apos; FOV by %&apos;2&apos; $camera" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s">camera</input><input type="%n">3</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Change 3d camera "</l><block var="1"/><l>" FOV by </l><block var="2"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>cameras3d.</l><block var="1"/><l>.fov = cameras3d.</l><block var="1"/><l>.fov + </l><block var="2"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>amg.perspective(cameras3d.</l><block var="1"/><l>.fov)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="%&apos;1&apos; position of 3d %&apos;2&apos; $camera" type="reporter" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">x<options>x&#xD;y&#xD;z</options></input><input type="%s">camera</input></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportJoinWords"><list><l>cameras3d.</l><block var="2"/><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>x</l></block><l>.x</l><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>y</l></block><l>.y</l><l>.z</l></block></block></list></block></list></block></block></script></block-definition><block-definition s="%&apos;1&apos; direction of 3d %&apos;2&apos; $camera" type="reporter" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">x<options>x&#xD;y</options></input><input type="%s">camera</input></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportJoinWords"><list><l>cameras3d.</l><block var="2"/><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>x</l></block><l>.directionX</l><l>.directionY</l></block></list></block></list></block></block></script></block-definition><block-definition s="switch to 3d camera %&apos;1&apos; $camera" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>camera3d = </l><custom-block s="&quot; %s &quot;"><block var="1"/></custom-block></list></block></block></script></block-definition><block-definition s="pause %&apos;1&apos;" type="command" category="sound"><header></header><code></code><translations></translations><inputs><input type="%s">sound</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Pause sound "</l><block var="1"/><l>"</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>sound.pause(sounds.</l><block var="1"/><l>, 1)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="resume %&apos;1&apos;" type="command" category="sound"><header></header><code></code><translations></translations><inputs><input type="%s">sound</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Resume sound "</l><block var="1"/><l>"</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>sound.pause(sounds.</l><block var="1"/><l>, 0)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="apply loop %&apos;1&apos;" type="command" category="sound"><header></header><code></code><translations></translations><inputs><input type="%s">sound</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Apply loop to sound "</l><block var="1"/><l>"</l></list></block></block><block s="doSetVar"><l>block</l><l>1</l></block><custom-block s="if %b %cs"><custom-block s="not %b"><l/></custom-block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block var="gap"/><l>sound.loop(sounds.</l><block var="1"/><l>)</l></list></block></block></script></custom-block><block s="doSetVar"><l>block</l><l>0</l></block></script></block-definition><block-definition s="remove loop %&apos;1&apos;" type="command" category="sound"><header></header><code></code><translations></translations><inputs><input type="%s">sound</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Remove loop to sound "</l><block var="1"/><l>"</l></list></block></block><block s="doSetVar"><l>block</l><l>1</l></block><custom-block s="if %b %cs"><custom-block s="not %b"><l/></custom-block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block var="gap"/><l>sound.loop(sounds.</l><block var="1"/><l>)</l></list></block></block></script></custom-block><block s="doSetVar"><l>block</l><l>0</l></block></script></block-definition><block-definition s="change volume of %&apos;1&apos; by %&apos;2&apos; %" type="command" category="sound"><header></header><code></code><translations></translations><inputs><input type="%s">sound</input><input type="%n">10</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Change volume of sound "</l><block var="1"/><l>" by </l><block var="2"/><l>%</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>sound.vol(sounds.</l><block var="1"/><l>, sound.vol(sounds.</l><block var="1"/><l>) + </l><block var="2"/><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="set volume of %&apos;1&apos; to %&apos;2&apos; %" type="command" category="sound"><header></header><code></code><translations></translations><inputs><input type="%s">sound</input><input type="%n">100</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Set volume of sound "</l><block var="1"/><l>" to </l><block var="2"/><l>%</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>sound.vol(sounds.</l><block var="1"/><l>, </l><block var="2"/><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="change size of %&apos;1&apos; by %&apos;2&apos; %" type="command" category="looks"><header></header><code></code><translations></translations><inputs><input type="%s">sprite</input><input type="%n">10</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Change size of sprite "</l><block var="1"/><l>" by </l><block var="2"/><l>%</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>sprites.</l><block var="1"/><l>.size = sprites.</l><block var="1"/><l>.size + </l><block var="2"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><block var="1"/><l>:scale(sprites.</l><block var="1"/><l>.size)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="set transparency of %&apos;1&apos; to %&apos;2&apos; %" type="command" category="looks"><header></header><code></code><translations></translations><inputs><input type="%s">sprite</input><input type="%n">100</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Set transparency of sprite "</l><block var="1"/><l>" to </l><block var="2"/><l>%</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>sprites.</l><block var="1"/><l>.alpha = </l><custom-block s="%n × %n"><block var="2"/><l>2.55</l></custom-block><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="change transparency of %&apos;1&apos; by %&apos;2&apos; %" type="command" category="looks"><header></header><code></code><translations></translations><inputs><input type="%s">sprite</input><input type="%n">10</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Change transparency of sprite "</l><block var="1"/><l>" by </l><block var="2"/><l>%</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>sprites.</l><block var="1"/><l>.alpha = sprites.</l><block var="1"/><l>.alpha + </l><custom-block s="%n × %n"><block var="2"/><l>2.55</l></custom-block><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="next frame for %&apos;1&apos;" type="command" category="looks"><header></header><code></code><translations></translations><inputs><input type="%s">sprite</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Next frame for sprite "</l><block var="1"/><l>"</l></list></block></block><block s="doSetVar"><l>block</l><l>1</l></block><custom-block s="if %b %cs else %cs"><custom-block s="%s = %s"><custom-block s="variable %s"><block s="reportJoinWords"><list><l>sprites.</l><block var="1"/><l>.frame</l></list></block></custom-block><custom-block s="variable %s"><block s="reportJoinWords"><list><l>sprites.</l><block var="1"/><l>.length</l></list></block></custom-block></custom-block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block var="gap"/><l>sprites.</l><block var="1"/><l>.frame = 1</l></list></block></block></script><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block var="gap"/><l>sprites.</l><block var="1"/><l>.frame = sprites.</l><block var="1"/><l>.frame + 1</l></list></block></block></script></custom-block><block s="doSetVar"><l>block</l><l>0</l></block></script></block-definition><block-definition s="previous frame for %&apos;1&apos;" type="command" category="looks"><header></header><code></code><translations></translations><inputs><input type="%s">sprite</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Previous frame for sprite "</l><block var="1"/><l>"</l></list></block></block><block s="doSetVar"><l>block</l><l>1</l></block><custom-block s="if %b %cs else %cs"><custom-block s="%s = %s"><custom-block s="variable %s"><block s="reportJoinWords"><list><l>sprites.</l><block var="1"/><l>.frame</l></list></block></custom-block><l>1</l></custom-block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block var="gap"/><l>sprites.</l><block var="1"/><l>.frame = sprites.</l><block var="1"/><l>.length</l></list></block></block></script><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block var="gap"/><l>sprites.</l><block var="1"/><l>.frame = sprites.</l><block var="1"/><l>.frame - 1</l></list></block></block></script></custom-block><block s="doSetVar"><l>block</l><l>0</l></block></script></block-definition><block-definition s="switch 3d %&apos;1&apos; to frame %&apos;2&apos; $globe" type="command" category="looks"><header></header><code></code><translations></translations><inputs><input type="%s">model</input><input type="%n">1</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Switch 3d model "</l><block var="1"/><l>" to frame </l><block var="2"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>models3d.</l><block var="1"/><l>.frame=</l><block var="2"/><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="next frame for 3d %&apos;1&apos; $globe" type="command" category="looks"><header></header><code></code><translations></translations><inputs><input type="%s">model</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Next frame for 3d model "</l><block var="1"/><l>"</l></list></block></block><block s="doSetVar"><l>block</l><l>1</l></block><custom-block s="if %b %cs else %cs"><custom-block s="%s = %s"><custom-block s="variable %s"><block s="reportJoinWords"><list><l>models3d.</l><block var="1"/><l>.frame</l></list></block></custom-block><custom-block s="variable %s"><block s="reportJoinWords"><list><l>models3d.</l><block var="1"/><l>.length</l></list></block></custom-block></custom-block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block var="gap"/><l>models3d.</l><block var="1"/><l>.frame = 1</l></list></block></block></script><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block var="gap"/><l>models3d.</l><block var="1"/><l>.frame = models3d.</l><block var="1"/><l>.frame + 1</l></list></block></block></script></custom-block><block s="doSetVar"><l>block</l><l>0</l></block></script></block-definition><block-definition s="previous frame for 3d %&apos;1&apos; $globe" type="command" category="looks"><header></header><code></code><translations></translations><inputs><input type="%s">model</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Previous frame for 3d model "</l><block var="1"/><l>"</l></list></block></block><block s="doSetVar"><l>block</l><l>1</l></block><custom-block s="if %b %cs else %cs"><custom-block s="%s = %s"><custom-block s="variable %s"><block s="reportJoinWords"><list><l>models3d.</l><block var="1"/><l>.frame</l></list></block></custom-block><l>1</l></custom-block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block var="gap"/><l>models3d.</l><block var="1"/><l>.frame = models3d.</l><block var="1"/><l>.length</l></list></block></block></script><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block var="gap"/><l>models3d.</l><block var="1"/><l>.frame = models3d.</l><block var="1"/><l>.frame - 1</l></list></block></block></script></custom-block><block s="doSetVar"><l>block</l><l>0</l></block></script></block-definition><block-definition s="load font %&apos;1&apos; $arrowDown" type="command" category="looks"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doIf"><block s="reportEquals"><block var="fonts"/><l>0</l></block><script><block s="doSetVar"><l>fonts</l><l>1</l></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><l>fonts={}</l><block s="reportUnicodeAsLetter"><l>10</l></block><block var="list"/></list></block></block></script></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Load font "</l><block var="1"/><l>"</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>table.insert(fonts,</l><block var="1"/><l>)</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>fonts.</l><block var="1"/><l> = font.load("fonts/</l><block var="1"/><l>.pgf")</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="render text %&apos;1&apos; with font: %&apos;2&apos; x: %&apos;3&apos; y: %&apos;4&apos; size: %&apos;5&apos; color: %&apos;6&apos; %&apos;7&apos; %&apos;8&apos;" type="command" category="looks"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%s">default<options>default</options></input><input type="%n">0</input><input type="%n">0</input><input type="%n">5</input><input type="%n">255</input><input type="%n">0</input><input type="%n">0</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Render text </l><block var="1"/><l> with font "</l><block var="2"/><l>", x: </l><block var="3"/><l>, y: </l><block var="4"/><l>, size: </l><block var="5"/><l>, color: (</l><block var="6"/><l>, </l><block var="7"/><l>, </l><block var="8"/><l>)</l></list></block></block><block s="doIfElse"><block s="reportEquals"><block var="2"/><l>default</l></block><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>screen.print(</l><block var="3"/><l> + 240, -(</l><block var="4"/><l>) + 136, </l><block var="1"/><l>, </l><block var="5"/><l>, color.new(</l><block var="6"/><l>, </l><block var="7"/><l>, </l><block var="8"/><l>))</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>screen.print(</l><block var="2"/><l>, </l><block var="3"/><l> + 240, -(</l><block var="4"/><l>) + 136, </l><block var="1"/><l>, </l><block var="5"/><l>, color.new(</l><block var="6"/><l>, </l><block var="7"/><l>, </l><block var="8"/><l>))</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block></script></block-definition><block-definition s="load and show %&apos;1&apos; splash %&apos;2&apos; (introduction)" type="command" category="looks"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">png<options>png&#xD;jpg&#xD;gif&#xD;bmp</options></input><input type="%s"></input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Load and show </l><block var="1"/><l> splash "</l><block var="2"/><l>" (introduction)</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>splash.show("splashes/</l><block var="2"/><l>.</l><block var="1"/><l>")</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="change path of game to %&apos;1&apos;" type="command" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%s">/</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Change path of game to </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>files.cdir(</l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="%&apos;1&apos; file from path %&apos;2&apos;" type="command" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">delete<options>delete&#xD;rename&#xD;create folder</options></input><input type="%s">/</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- </l><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>delete</l></block><l>Delete</l><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>rename</l></block><l>Rename</l><l>Create folder</l></block></block><l> file from path </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="2"/><l><option>number</option></l></block><block s="reportIsA"><block var="2"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="2"/><l>"</l></list></block></block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>files.</l><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>create folder</l></block><l>mkdir</l><block var="1"/></block><l>(</l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="2"/><l><option>number</option></l></block><block s="reportIsA"><block var="2"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="2"/><l>"</l></list></block></block><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="%&apos;1&apos; file from path %&apos;2&apos; to %&apos;3&apos;" type="command" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">move<options>move&#xD;copy&#xD;extract zip/rar</options></input><input type="%s">/</input><input type="%s">/</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- </l><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>move</l></block><l>Move</l><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>copy</l></block><l>Copy</l><l>Extract zip/rar</l></block></block><l> file from path </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="2"/><l><option>number</option></l></block><block s="reportIsA"><block var="2"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="2"/><l>"</l></list></block></block><l> to </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="3"/><l><option>number</option></l></block><block s="reportIsA"><block var="3"/><l><option>list</option></l></block></block><block var="3"/><block s="reportJoinWords"><list><l>"</l><block var="3"/><l>"</l></list></block></block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>files.</l><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>extract zip/rar</l></block><l>extract</l><block var="1"/></block><l>(</l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="2"/><l><option>number</option></l></block><block s="reportIsA"><block var="2"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="2"/><l>"</l></list></block></block><l>, </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="3"/><l><option>number</option></l></block><block s="reportIsA"><block var="3"/><l><option>list</option></l></block></block><block var="3"/><block s="reportJoinWords"><list><l>"</l><block var="3"/><l>"</l></list></block></block><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="extract zip/rar with password %&apos;1&apos; from path %&apos;2&apos; to %&apos;3&apos;" type="command" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s">/</input><input type="%s">/</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Extract zip/rar with password </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block><l> from path </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="2"/><l><option>number</option></l></block><block s="reportIsA"><block var="2"/><l><option>list</option></l></block></block><block var="2"/><block s="reportJoinWords"><list><l>"</l><block var="2"/><l>"</l></list></block></block><l> to </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="3"/><l><option>number</option></l></block><block s="reportIsA"><block var="3"/><l><option>list</option></l></block></block><block var="3"/><block s="reportJoinWords"><list><l>"</l><block var="3"/><l>"</l></list></block></block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>files.extract(</l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="2"/><l><option>number</option></l></block><block s="reportIsA"><block var="2"/><l><option>list</option></l></block></block><block var="2"/><block s="reportJoinWords"><list><l>"</l><block var="2"/><l>"</l></list></block></block><l>, </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="3"/><l><option>number</option></l></block><block s="reportIsA"><block var="3"/><l><option>list</option></l></block></block><block var="3"/><block s="reportJoinWords"><list><l>"</l><block var="3"/><l>"</l></list></block></block><l>, </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="extract %&apos;1&apos; file from zip/rar from path %&apos;2&apos; to %&apos;3&apos;" type="command" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%s">filename</input><input type="%s">/</input><input type="%s">/</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Extract </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block><l> file from zip/rar from path </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="2"/><l><option>number</option></l></block><block s="reportIsA"><block var="2"/><l><option>list</option></l></block></block><block var="2"/><block s="reportJoinWords"><list><l>"</l><block var="2"/><l>"</l></list></block></block><l> to </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="3"/><l><option>number</option></l></block><block s="reportIsA"><block var="3"/><l><option>list</option></l></block></block><block var="3"/><block s="reportJoinWords"><list><l>"</l><block var="3"/><l>"</l></list></block></block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>files.extractfile(</l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="2"/><l><option>number</option></l></block><block s="reportIsA"><block var="2"/><l><option>list</option></l></block></block><block var="2"/><block s="reportJoinWords"><list><l>"</l><block var="2"/><l>"</l></list></block></block><l>, </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block><l>, </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="3"/><l><option>number</option></l></block><block s="reportIsA"><block var="3"/><l><option>list</option></l></block></block><block var="3"/><block s="reportJoinWords"><list><l>"</l><block var="3"/><l>"</l></list></block></block><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="extract %&apos;1&apos; file from zip/rar with password %&apos;2&apos; from path %&apos;3&apos; to %&apos;4&apos;" type="command" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%s">filename</input><input type="%s"></input><input type="%s">/</input><input type="%s">/</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Extract </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block><l> file from zip/rar with password </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="2"/><l><option>number</option></l></block><block s="reportIsA"><block var="2"/><l><option>list</option></l></block></block><block var="2"/><block s="reportJoinWords"><list><l>"</l><block var="2"/><l>"</l></list></block></block><l> from path </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="3"/><l><option>number</option></l></block><block s="reportIsA"><block var="3"/><l><option>list</option></l></block></block><block var="3"/><block s="reportJoinWords"><list><l>"</l><block var="3"/><l>"</l></list></block></block><l> to </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="4"/><l><option>number</option></l></block><block s="reportIsA"><block var="4"/><l><option>list</option></l></block></block><block var="4"/><block s="reportJoinWords"><list><l>"</l><block var="4"/><l>"</l></list></block></block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>files.extractfile(</l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="3"/><l><option>number</option></l></block><block s="reportIsA"><block var="3"/><l><option>list</option></l></block></block><block var="3"/><block s="reportJoinWords"><list><l>"</l><block var="3"/><l>"</l></list></block></block><l>, </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block><l>, </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="4"/><l><option>number</option></l></block><block s="reportIsA"><block var="4"/><l><option>list</option></l></block></block><block var="4"/><block s="reportJoinWords"><list><l>"</l><block var="4"/><l>"</l></list></block></block><l>, </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="2"/><l><option>number</option></l></block><block s="reportIsA"><block var="2"/><l><option>list</option></l></block></block><block var="2"/><block s="reportJoinWords"><list><l>"</l><block var="2"/><l>"</l></list></block></block><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="path of game" type="reporter" category="sensing"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="reportNewList"><list><l>files.cdir()	</l></list></block></block></script></block-definition><block-definition s="%&apos;1&apos; of file from path %&apos;2&apos;" type="reporter" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">size<options>size&#xD;extension</options></input><input type="%s">/</input></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportJoinWords"><list><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>size</l></block><l>files.ext(</l><l>files.ext(</l></block><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="2"/><l><option>number</option></l></block><block s="reportIsA"><block var="2"/><l><option>list</option></l></block></block><block var="2"/><block s="reportJoinWords"><list><l>"</l><block var="2"/><l>"</l></list></block></block><l>)</l></list></block></list></block></block></script></block-definition><block-definition s="does file exist from path %&apos;1&apos; ?" type="predicate" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%s">/</input></inputs><script><block s="doReport"><block s="reportJoinWords"><list><l>files.exists(</l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block><l>)</l></list></block></block></script></block-definition><block-definition s="console %&apos;1&apos;" type="reporter" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">FPS<options>FPS&#xD;CPU velocity&#xD;CPU frequency&#xD;RAM load&#xD;total RAM&#xD;CFW version&#xD;nickname&#xD;MAC address&#xD;date and time&#xD;language&#xD;password&#xD;model&#xD;region&#xD;motherboard type&#xD;motherboard gen</options></input></inputs><script><block s="doIfElse"><block s="reportOr"><block s="reportOr"><block s="reportEquals"><block var="1"/><l>model</l></block><block s="reportEquals"><block var="1"/><l>motherboard type</l></block></block><block s="reportOr"><block s="reportEquals"><block var="1"/><l>motherboard gen</l></block><block s="reportEquals"><block var="1"/><l>region</l></block></block></block><script><block s="doReport"><block s="reportNewList"><list><block s="reportJoinWords"><list><l>hw.</l><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>model</l></block><l>getmodel</l><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>motherboard type</l></block><l>board</l><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>motherboard gen</l></block><l>gen</l><block var="1"/></block></block></block><l>()</l></list></block></list></block></block></script><script><block s="doReport"><block s="reportNewList"><list><block s="reportJoinWords"><list><l>os.</l><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>CPU velocity</l></block><l>cpu</l><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>CPU frequency</l></block><l>bus</l><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>RAM load</l></block><l>ram</l><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>total RAM</l></block><l>totalram</l><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>CFW version</l></block><l>cfw</l><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>CFW version</l></block><l>cfw</l><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>nickname</l></block><l>nick</l><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>MAC address</l></block><l>mac</l><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>date and time</l></block><l>getdate</l><block var="1"/></block></block></block></block></block></block></block></block></block><l>()</l></list></block></list></block></block></script></block></script></block-definition><block-definition s="set volume of console to %&apos;1&apos; (max. 30)" type="command" category="sound"><header></header><code></code><translations></translations><inputs><input type="%s">30</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Set volume of console to </l><block var="1"/></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>hw.volume(</l><block var="1"/><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="mute console" type="command" category="sound"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Mute console</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>hw.mute(1)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="unmute console" type="command" category="sound"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Unmute console</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>hw.mute(0)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="volume of sound %&apos;1&apos;" type="reporter" category="sound"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportJoinWords"><list><l>sound.vol(sounds.</l><block var="1"/><l>)</l></list></block></list></block></block></script></block-definition><block-definition s="volume of console" type="reporter" category="sound"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportJoinWords"><list><l>hw.volume()</l></list></block></list></block></block></script></block-definition><block-definition s="is sound %&apos;1&apos; looping?" type="predicate" category="sound"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block s="reportJoinWords"><list><l>sound.looping(</l><block var="1"/><l>)</l></list></block></block></script></block-definition><block-definition s="is sound %&apos;1&apos; playing?" type="predicate" category="sound"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block s="reportJoinWords"><list><l>sound.playing(</l><block var="1"/><l>)</l></list></block></block></script></block-definition><block-definition s="is sound %&apos;1&apos; ended?" type="predicate" category="sound"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block s="reportJoinWords"><list><l>sound.endstream(</l><block var="1"/><l>)</l></list></block></block></script></block-definition><block-definition s="reset timer" type="command" category="sensing"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Reset timer</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>timer.reset()</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="timer" type="reporter" category="sensing"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="reportNewList"><list><l>timer.time()</l></list></block></block></script></block-definition><block-definition s="show message %&apos;1&apos;" type="command" category="looks"><header></header><code></code><translations></translations><inputs><input type="%s">Hello</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Show message </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>os.message(</l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="show message %&apos;1&apos; , if answer is %&apos;2&apos;" type="predicate" category="looks"><header></header><code></code><translations></translations><inputs><input type="%s">Ok?</input><input type="%s" readonly="true">yes<options>yes&#xD;no&#xD;cancel</options></input></inputs><script><block s="doReport"><block s="reportJoinWords"><list><l>os.message(</l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block><l>, 1) = </l><block s="reportIfElse"><block s="reportEquals"><block var="2"/><l>yes</l></block><l>1</l><block s="reportIfElse"><block s="reportEquals"><block var="2"/><l>no</l></block><l>0</l><l>-1</l></block></block></list></block></block></script></block-definition><block-definition s="show message box with title %&apos;1&apos; and text %&apos;2&apos;" type="command" category="looks"><header></header><code></code><translations></translations><inputs><input type="%s">Hello</input><input type="%s">Let&apos;s play</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Show message box with title </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block><l> and text </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="2"/><l><option>number</option></l></block><block s="reportIsA"><block var="2"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="2"/><l>"</l></list></block></block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>os.messagebox(</l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block><l>, </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="2"/><l><option>number</option></l></block><block s="reportIsA"><block var="2"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="2"/><l>"</l></list></block></block><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="show message box with title %&apos;1&apos; and text %&apos;2&apos; , if answer is %&apos;3&apos;" type="predicate" category="looks"><header></header><code></code><translations></translations><inputs><input type="%s">Hello</input><input type="%s">Let&apos;s play</input><input type="%s" readonly="true">OK<options>OK&#xD;Cancel</options></input></inputs><script><block s="doReport"><block s="reportJoinWords"><list><l>os.messagebox(</l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block><l>, </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="2"/><l><option>number</option></l></block><block s="reportIsA"><block var="2"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="2"/><l>"</l></list></block></block><l>) = </l><block s="reportIfElse"><block s="reportEquals"><block var="3"/><l>OK</l></block><l>1</l><l>2</l></block></list></block></block></script></block-definition><block-definition s="ask question %&apos;1&apos; | pre-text %&apos;2&apos; | %&apos;3&apos; keyboard | %&apos;4&apos; maximum symbols" type="command" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%s">Ok?</input><input type="%s">Yes</input><input type="%s" readonly="true">letters<options>letters&#xD;numbers</options></input><input type="%n">10</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Ask question </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block><l>, pre-text </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="2"/><l><option>number</option></l></block><block s="reportIsA"><block var="2"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="2"/><l>"</l></list></block></block><l>, "</l><block var="3"/><l>" type keyboard, </l><block var="4"/><l> maximum symbols</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>answer = osk.init(</l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block><l>, </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="2"/><l><option>number</option></l></block><block s="reportIsA"><block var="2"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="2"/><l>"</l></list></block></block><l>, </l><block s="reportIfElse"><block s="reportEquals"><block var="3"/><l>letters</l></block><l>1</l><l>2</l></block><l>, </l><block var="4"/><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="answer" type="reporter" category="sensing"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="reportNewList"><list><l>answer</l></list></block></block></script></block-definition><block-definition s="variable to text %&apos;1&apos;" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doSetVar"><l>variable</l><l>1</l></block><block s="doReport"><block var="1"/></block></script></block-definition><block-definition s="item %&apos;1&apos; of list %&apos;2&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%n">1</input><input type="%s"></input></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportJoinWords"><list><block var="2"/><l>[</l><block var="1"/><l>]</l></list></block></list></block></block></script></block-definition><block-definition s="frame # of sprite" type="reporter" category="looks"><header></header><code></code><translations></translations><inputs></inputs></block-definition><block-definition s="save data %&apos;1&apos;" type="command" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs></block-definition><block-definition s="%&apos;1&apos; wifi" type="command" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">connect<options>connect&#xD;disconnect</options></input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- </l><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>connect</l></block><l>Connect</l><l>Disconnect</l></block><l> wifi</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><block s="reportIfElse"><block s="reportEquals"><block var="1"/><l>connect</l></block><l>wlan.connect()</l><l>wlan.disconnect()</l></block></list></block></block></script></block-definition><block-definition s="is wifi connected?" type="predicate" category="sensing"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><l>wlan.isconnected()</l></block></script></block-definition><block-definition s="download file from url %&apos;1&apos; to path %&apos;2&apos; (include filename)" type="command" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s">downloads/</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Download file from url </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block><l> to path </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="2"/><l><option>number</option></l></block><block s="reportIsA"><block var="2"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="2"/><l>"</l></list></block></block><l> (include filename)</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>http.getfile(</l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block><l>, </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="2"/><l><option>number</option></l></block><block s="reportIsA"><block var="2"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="2"/><l>"</l></list></block></block><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="send data %&apos;1&apos; to url %&apos;2&apos; and download response file to path %&apos;3&apos; (include filename)" type="command" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%s">Hello</input><input type="%s"></input><input type="%s">downloads/</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Send data </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block><l> to url </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="2"/><l><option>number</option></l></block><block s="reportIsA"><block var="2"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="2"/><l>"</l></list></block></block><l> and download response to path </l><l></l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="3"/><l><option>number</option></l></block><block s="reportIsA"><block var="3"/><l><option>list</option></l></block></block><block var="3"/><block s="reportJoinWords"><list><l>"</l><block var="3"/><l>"</l></list></block></block></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>http.postfile(</l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="2"/><l><option>number</option></l></block><block s="reportIsA"><block var="2"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="2"/><l>"</l></list></block></block><l>, </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="3"/><l><option>number</option></l></block><block s="reportIsA"><block var="3"/><l><option>list</option></l></block></block><block var="3"/><block s="reportJoinWords"><list><l>"</l><block var="3"/><l>"</l></list></block></block><l>, </l><block s="reportIfElse"><block s="reportOr"><block s="reportIsA"><block var="1"/><l><option>number</option></l></block><block s="reportIsA"><block var="1"/><l><option>list</option></l></block></block><block var="1"/><block s="reportJoinWords"><list><l>"</l><block var="1"/><l>"</l></list></block></block><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="send data %&apos;1&apos; with %&apos;2&apos; size to url %&apos;3&apos; and download response file to path %&apos;4&apos; (include filename)" type="command" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%s">Hello</input><input type="%n">5</input><input type="%s"></input><input type="%s">downloads/</input></inputs><script><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>-- Send data "</l><block var="1"/><l>" with </l><block var="2"/><l> size to url "</l><block var="3"/><l>" and download response file to path "</l><block var="4"/><l>" (include filename)</l></list></block></block><block s="doSetVar"><l>list</l><block s="reportJoinWords"><list><block var="list"/><block s="reportUnicodeAsLetter"><l>10</l></block><block var="gap"/><l>http.postfile("</l><block var="3"/><l>", "</l><block var="4"/><l>", "</l><block var="1"/><l>", </l><block var="2"/><l>)</l><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script></block-definition><block-definition s="create a server %&apos;1&apos; with port %&apos;2&apos;" type="command" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%s">socket</input><input type="%n">80</input></inputs></block-definition><block-definition s="accept connection for server %&apos;1&apos;" type="command" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%s">socket</input></inputs></block-definition><block-definition s="connect server with ip %&apos;1&apos; port %&apos;2&apos;" type="command" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%s">192.168.0.1</input><input type="%n">80</input></inputs></block-definition></blocks><stage name="Coding" width="480" height="360" costume="0" color="255,255,255,1" tempo="60" threadsafe="false" penlog="false" volume="100" pan="0" lines="round" ternary="false" hyperops="true" codify="false" inheritance="true" sublistIDs="false" id="8526"><pentrails>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAAAXNSR0IArs4c6QAADoVJREFUeF7t1cEJAAAIxDDdf2m3sJ+4wEEQuuMIECBAgACBd4F9XzRIgAABAgQIjAB7AgIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECByxcQFpoRMBzwAAAABJRU5ErkJggg==</pentrails><costumes><list struct="atomic" id="8527"></list></costumes><sounds><list struct="atomic" id="8528"></list></sounds><variables></variables><blocks></blocks><scripts><script x="20" y="20"><block s="receiveGo"></block></script></scripts><sprites select="0"><sprite name="Core" idx="1" x="0" y="0" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="80,80,80,1" pen="tip" id="8534"><costumes><list id="8535"><item><ref mediaID="Core_cst_costume1"></ref></item></list></costumes><sounds><list struct="atomic" id="8536"></list></sounds><blocks></blocks><variables></variables><scripts><script x="20" y="20"><block s="receiveGo"><comment w="90" collapsed="false">Don&apos;t touch it, better use &quot;Coding&quot; section.</comment></block><block s="doSetVar"><l>list</l><l></l></block><block s="doShowVar"><l>list</l></block><block s="doSetVar"><l>random</l><l>0</l></block><block s="doSetVar"><l>wait</l><l>0</l></block><block s="doSetVar"><l>3d</l><l>0</l></block><block s="doSetVar"><l>sprites</l><l>0</l></block><block s="doSetVar"><l>sounds</l><l>0</l></block><block s="doSetVar"><l>fonts</l><l>0</l></block><block s="doSetVar"><l>block</l><l>0</l></block><block s="doDeleteFromList"><l><option>all</option></l><block var="gap"/></block></script></scripts></sprite><watcher var="gap" style="normal" x="11" y="252" color="243,118,29" hidden="true"/><watcher var="random" style="normal" x="380" y="9" color="243,118,29" hidden="true"/><watcher var="wait" style="normal" x="10" y="10" color="243,118,29" hidden="true"/><watcher var="3d" style="normal" x="10" y="31.00000200000001" color="243,118,29" hidden="true"/><watcher var="sprites" style="normal" x="10" y="52.00000400000002" color="243,118,29" hidden="true"/><watcher var="sounds" style="normal" x="10" y="73.000006" color="243,118,29" hidden="true"/><watcher var="fonts" style="normal" x="10" y="94.00000799999998" color="243,118,29" hidden="true"/><watcher var="block" style="normal" x="10" y="115.00000999999997" color="243,118,29" hidden="true"/><watcher var="list" style="large" x="0" y="0" color="243,118,29"/></sprites></stage><variables><variable name="list"><l>&#xD;-- Connect wifi&#xD;wlan.connect()</l></variable><variable name="gap"><list struct="atomic" id="8580"></list></variable><variable name="random"><l>0</l></variable><variable name="wait"><l>0</l></variable><variable name="3d"><l>0</l></variable><variable name="sprites"><l>0</l></variable><variable name="sounds"><l>0</l></variable><variable name="fonts"><l>0</l></variable><variable name="block"><l>0</l></variable></variables></scene></scenes></project><media name="ScratchToPSP" app="Snap! 7, https://snap.berkeley.edu" version="2"><costume name="costume1" center-x="240" center-y="180" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAAAXNSR0IArs4c6QAADoVJREFUeF7t1cEJAAAIxDDdf2m3sJ+4wEEQuuMIECBAgACBd4F9XzRIgAABAgQIjAB7AgIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECByxcQFpoRMBzwAAAABJRU5ErkJggg==" mediaID="Core_cst_costume1"/></media></snapdata>