<snapdata remixID="14485825"><project name="tictoctoe_pythonblocks" app="Snap! 11.0.0, https://snap.berkeley.edu" version="2"><notes></notes><thumbnail>data:image/png;base64,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</thumbnail><scenes select="1"><scene name="tictoctoe_pythonblocks"><notes></notes><palette><category name="snapython" color="0,116,143,1"/></palette><hidden></hidden><headers></headers><code><delim>,</delim></code><blocks><block-definition s="%&apos;var1&apos; , %&apos;var2&apos; = %&apos;var2&apos; , %&apos;var1&apos;" type="command" category="other"><header></header><code></code><translations></translations><inputs><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>temp</l></list></block><block s="doSetVar"><l>temp</l><block s="evaluate"><block var="var1"/><list></list></block></block><block s="doRun"><block s="reifyScript"><script><block s="doSetVar"><l></l><l></l></block></script><list></list></block><list><block var="var1"/><block s="evaluate"><block var="var2"/><list></list></block></list></block><block s="doRun"><block s="reifyScript"><script><block s="doSetVar"><l></l><l></l></block></script><list></list></block><list><block var="var2"/><block var="temp"/></list></block></script></block-definition><block-definition s="cloneOnclick" type="command" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><custom-block s="if %b : %cs else : %cs"><custom-block s="%anyUE == %anyUE"><l>whosturn</l><l>"circle"</l></custom-block><script><custom-block s="if %b : %cs"><custom-block s="not %b"><custom-block s="%s . %txt ( %mult%anyUE )"><l>self</l><l>used</l><list></list></custom-block></custom-block><script><custom-block s="%s . %txt ( %mult%anyUE ）"><l>self</l><l>shape</l><list><l>"O"</l></list></custom-block><custom-block s="%anyUE = %anyUE"><l>board[self.order]</l><l>"O"</l></custom-block><custom-block s="%anyUE = %anyUE"><l>self.used</l><l>True</l></custom-block><custom-block s="%anyUE = %anyUE"><l>whosturn</l><l>"cross"</l></custom-block><custom-block s="if %b : %cs"><custom-block s="judge %s"><l>"O"</l></custom-block><script><block s="doSayFor"><l>O方获胜！</l><l>2</l></block></script></custom-block></script></custom-block></script><script><custom-block s="if %b : %cs"><custom-block s="not %b"><custom-block s="%s . %txt ( %mult%anyUE )"><l>self</l><l>used</l><list></list></custom-block></custom-block><script><custom-block s="%s . %txt ( %mult%anyUE ）"><l>self</l><l>shape</l><list><l>"X"</l></list></custom-block><custom-block s="%anyUE = %anyUE"><l>board[self.order]</l><l>"X"</l></custom-block><custom-block s="%anyUE = %anyUE"><l>self.used</l><l>True</l></custom-block><custom-block s="%anyUE = %anyUE"><l>whosturn</l><l>"circle"</l></custom-block><custom-block s="if %b : %cs"><custom-block s="judge %s"><l>"X"</l></custom-block><script><block s="doSayFor"><l>X方获胜！</l><l>2</l></block></script></custom-block></script></custom-block></script></custom-block></script></block-definition><block-definition s="judge %&apos;x&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doWarp"><script><custom-block s="%anyUE = %anyUE"><l>winningPattern</l><l>[[0,1,2],[3,4,5],[6,7,8],[0,3,6],[1,4,7],[2,5,8],[0,4,8],[2,4,6]]</l></custom-block><custom-block s="for %txt in %anyUE : %cs"><l>row</l><l>winningPattern</l><script><custom-block s="%anyUE = %anyUE"><l>won</l><l>True</l></custom-block><custom-block s="for %txt in %anyUE : %cs"><l>position</l><l>row</l><script><custom-block s="if %b : %cs"><custom-block s="%anyUE != %anyUE"><l>board[position]</l><custom-block s="parse %txt"><block var="x"/></custom-block></custom-block><script><custom-block s="%anyUE = %anyUE"><l>won</l><l>False</l></custom-block></script></custom-block></script></custom-block><custom-block s="if %b : %cs"><custom-block s="%anyUE == %anyUE"><l>won</l><l>True</l></custom-block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></custom-block></script></custom-block><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block></script></block-definition><block-definition s="%&apos;object&apos; . get( %&apos;property&apos; )" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%anyUE"></input></inputs><script><block s="doIfElse"><block s="reportVariadicEquals"><list><block var="object"/><l>self</l></list></block><script><block s="doReport"><block s="evaluate"><block s="reportAttributeOf"><block var="property"/><block s="reportGet"><l><option>self</option></l></block></block><list></list></block></block></script><script><block s="doReport"><block s="evaluate"><block s="reportAttributeOf"><block var="property"/><block var="object"/></block><list></list></block></block></script></block></script></block-definition><block-definition s="%&apos;object&apos; . set( %&apos;property&apos; , %&apos;value&apos; )" type="command" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%anyUE"></input><input type="%s"></input></inputs><script><block s="doIfElse"><block s="reportVariadicEquals"><list><block var="object"/><l>self</l></list></block><script><block s="doRun"><block s="reifyScript"><script><block s="doSetVar"><l></l><l></l></block></script><list></list></block><list><block var="property"/><block var="value"/></list></block></script><script><block s="doTellTo"><block var="object"/><block s="reifyScript"><script><block s="doSetVar"><l></l><l></l></block></script><list></list></block><list><block var="property"/><block var="value"/></list></block></script></block></script></block-definition><block-definition s="initSnapython" type="command" category="snapython"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doWarp"><script><block s="doRun"><block s="reportJSFunction"><list></list><l>this.parent.funcmap = {};</l></block><list></list></block><custom-block s="register func %txt %cmdRing"><l>setxy</l><block s="reifyScript"><script><block s="gotoXY"><l></l><l></l></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>goto</l><block s="reifyScript"><script><block s="gotoXY"><l></l><l></l></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>setpos</l><block s="reifyScript"><script><block s="gotoXY"><l></l><l></l></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>forward</l><block s="reifyScript"><script><block s="forward"><l></l></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>clone</l><block s="reifyScript"><script><block s="createClone"><l><option>myself</option></l></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>right</l><block s="reifyScript"><script><block s="turn"><l></l></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>left</l><block s="reifyScript"><script><block s="turnLeft"><l></l></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>fd</l><block s="reifyScript"><script><block s="forward"><l></l></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>rt</l><block s="reifyScript"><script><block s="turn"><l></l></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>lt</l><block s="reifyScript"><script><block s="turnLeft"><l></l></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>seth</l><block s="reifyScript"><script><block s="setHeading"><l></l></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>setpos</l><block s="reifyScript"><script><block s="gotoXY"><l></l><l></l></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>setx</l><block s="reifyScript"><script><block s="setXPosition"><l></l></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>sety</l><block s="reifyScript"><script><block s="setYPosition"><l></l></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>penup</l><block s="reifyScript"><script><block s="up"></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>up</l><block s="reifyScript"><script><block s="up"></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>pu</l><block s="reifyScript"><script><block s="up"></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>pendown</l><block s="reifyScript"><script><block s="down"></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>down</l><block s="reifyScript"><script><block s="down"></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>pd</l><block s="reifyScript"><script><block s="down"></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>pensize</l><block s="reifyScript"><script><block s="setSize"><l></l></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>pencolor</l><block s="reifyScript"><script><block s="errorObsolete"></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>stamp</l><block s="reifyScript"><script><block s="doStamp"></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>hide</l><block s="reifyScript"><script><block s="hide"></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>show</l><block s="reifyScript"><script><block s="show"></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>shape</l><block s="reifyScript"><script><block s="doSwitchToCostume"><l></l></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>home</l><block s="reifyScript"><script><block s="gotoXY"><l>0</l><l>0</l></block><block s="setHeading"><l>0</l></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>clearscreen</l><block s="reifyScript"><script><block s="up"></block><block s="gotoXY"><l>0</l><l>0</l></block><block s="clear"></block><block s="setHeading"><l>0</l></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>cs</l><block s="reifyScript"><script><block s="up"></block><block s="gotoXY"><l>0</l><l>0</l></block><block s="clear"></block><block s="setHeading"><l>0</l></block></script><list></list></block></custom-block><custom-block s="register func %txt %cmdRing"><l>reset</l><block s="reifyScript"><script><block s="up"></block><block s="gotoXY"><l>0</l><l>0</l></block><block s="clear"></block><block s="setHeading"><l>90</l></block></script><list></list></block></custom-block><block s="doRun"><block s="reportJSFunction"><list></list><l>this.parent.reportmap = {};</l></block><list></list></block><custom-block s="register reporter %txt %repRing"><l>position</l><block s="reifyReporter"><autolambda><custom-block s="position"></custom-block></autolambda><list></list></block></custom-block><custom-block s="register reporter %txt %repRing"><l>clone</l><block s="reifyReporter"><autolambda><block s="newClone"><l><option>myself</option></l></block></autolambda><list></list></block></custom-block><custom-block s="register reporter %txt %repRing"><l>pos</l><block s="reifyReporter"><autolambda><custom-block s="position"></custom-block></autolambda><list></list></block></custom-block><custom-block s="register reporter %txt %repRing"><l>xcor</l><block s="reifyReporter"><autolambda><block s="xPosition"></block></autolambda><list></list></block></custom-block><custom-block s="register reporter %txt %repRing"><l>ycor</l><block s="reifyReporter"><autolambda><block s="yPosition"></block></autolambda><list></list></block></custom-block><custom-block s="register reporter %txt %repRing"><l>heading</l><block s="reifyReporter"><autolambda><block s="direction"></block></autolambda><list></list></block></custom-block><custom-block s="register reporter %txt %repRing"><l>distance</l><block s="reifyReporter"><autolambda><block s="reportRelationTo"><l><option>distance</option></l><l></l></block></autolambda><list></list></block></custom-block><custom-block s="register reporter %txt %repRing"><l>costumes</l><block s="reifyReporter"><autolambda><block s="reportGet"><l><option>costumes</option></l></block></autolambda><list></list></block></custom-block><custom-block s="register reporter %txt %repRing"><l>isdown</l><block s="reifyReporter"><autolambda><block s="getPenDown"></block></autolambda><list></list></block></custom-block><block s="doMapListCode"><l><option>delimiter</option></l><l></l><l>,</l></block><block s="doRun"><block s="reportJSFunction"><list></list><l>SyntaxElementMorph.prototype.labelParts[&apos;%elseif&apos;].group = &apos;elif %b : %cs&apos;;&#xD;this.parentThatIsA(IDE_Morph).flushBlocksCache(&apos;snapython&apos;);&#xD;this.parentThatIsA(IDE_Morph).currentCategory = &apos;snapython&apos;;&#xD;this.parentThatIsA(IDE_Morph).categories.children.forEach(each =&gt;&#xD;    each.refresh()&#xD;);&#xD;this.parentThatIsA(IDE_Morph).refreshPalette(true);</l></block><list></list></block></script></block></script></block-definition><block-definition s="%&apos;func&apos; ( %&apos;params&apos; )" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%anyUE"></input><input type="%mult%s"></input></inputs><script><block s="doReport"><block s="evaluate"><block var="func"/><list><block var="params"/></list></block></block></script></block-definition><block-definition s="tuple %&apos;content&apos;" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs><input type="%mult%s"></input></inputs><script><block s="doReport"><block s="reportNewList"><list><l>tuple</l><block var="content"/></list></block></block></script></block-definition><block-definition s="%&apos;object&apos; . %&apos;method&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%txt"></input><input type="%cmdRing"></input></inputs><script><block s="doDeclareVariables"><list><l>obj</l></list></block><block s="doIfElse"><block s="reportVariadicEquals"><list><block var="object"/><l>self</l></list></block><script><block s="doSetVar"><l>obj</l><block s="reportGet"><l><option>self</option></l></block></block></script><script><block s="doSetVar"><l>obj</l><block s="reportObject"><block s="reportJoinWords"><list><block var="object"/></list></block></block></block></script></block><block s="doTellTo"><block var="obj"/><block var="method"/><list></list></block></script></block-definition><block-definition s="迭代器 初值 %&apos;start&apos; 终值 %&apos;end&apos; 步距 %&apos;step&apos;" type="reporter" category="operators"><header></header><code></code><translations>en:iterator start _ end _ step _&#xD;</translations><inputs><input type="%n">0</input><input type="%n">10</input><input type="%n">1</input></inputs><script><block s="doDeclareVariables"><list><l>x</l></list></block><block s="doSetVar"><l>x</l><block var="start"/></block><block s="doReport"><block s="reifyScript"><script><block s="doIf"><block s="reportVariadicEquals"><list><block var="param"/><l>next</l></list></block><script><block s="doDeclareVariables"><list><l>result</l></list></block><block s="doIfElse"><block s="reportVariadicLessThan"><list><block var="x"/><block var="end"/></list></block><script><block s="doSetVar"><l>result</l><block var="x"/></block><block s="doChangeVar"><l>x</l><block var="step"/></block></script><script><block s="doSetVar"><l>result</l><l>nil</l></block></script></block><block s="doReport"><block var="result"/></block></script><list></list></block></script><list><l>param</l></list></block></block></script></block-definition><block-definition s="import %&apos;libs&apos;" type="command" category="snapython"><header></header><code>import &lt;#1&gt;</code><translations></translations><inputs><input type="%txt">turtle<options>turtle&#xD;random&#xD;math&#xD;json</options></input></inputs><script><block s="doIf"><block s="reportVariadicEquals"><list><block var="libs"/><l>turtle</l></list></block><script><block s="doRun"><block s="reportJSFunction"><list></list><l>this.name = "turtle";</l></block><list></list></block></script><list></list></block></script></block-definition><block-definition s="%&apos;string&apos;" type="reporter" category="snapython"><header></header><code>&lt;#1&gt;</code><translations></translations><inputs><input type="%txt"></input></inputs><script><block s="doReport"><custom-block s="parse %txt"><block var="string"/></custom-block></block></script></block-definition><block-definition s="%&apos;x&apos; + %&apos;y&apos;" type="reporter" category="snapython"><header></header><code>(&lt;#1&gt;+&lt;#2&gt;)</code><translations></translations><inputs><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>value1</l><l>value2</l><l>input</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="x"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="x"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value1</l><block var="input"/></block></script><script><block s="doSetVar"><l>value1</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doSetVar"><l>input</l><block s="evaluate"><block var="y"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="y"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value2</l><block var="input"/></block></script><script><block s="doSetVar"><l>value2</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doIfElse"><block s="reportVariadicAnd"><list><block s="reportIsA"><block var="value1"/><l><option>text</option></l></block><block s="reportVariadicOr"><list><block s="reportIsA"><block var="value2"/><l><option>text</option></l></block><block s="reportIsA"><block var="value2"/><l><option>number</option></l></block></list></block></list></block><script><block s="doReport"><block s="reportJoinWords"><list><block var="value1"/><block var="value2"/></list></block></block></script><script><block s="doIfElse"><block s="reportVariadicAnd"><list><custom-block s="%anyUE == %anyUE"><custom-block s="type( %anyUE )"><block var="value1"/></custom-block><l>list</l></custom-block><custom-block s="%anyUE == %anyUE"><custom-block s="type( %anyUE )"><block var="value2"/></custom-block><l>list</l></custom-block></list></block><script><block s="doReport"><block s="reportConcatenatedLists"><list><block var="value1"/><block var="value2"/></list></block></block></script><script><block s="doReport"><block s="reportVariadicSum"><list><block var="value1"/><block var="value2"/></list></block></block></script></block></script></block></script></block></script></block-definition><block-definition s="%&apos;x&apos; － %&apos;y&apos;" type="reporter" category="snapython"><header></header><code>(&lt;#1&gt;-&lt;#2&gt;)</code><translations></translations><inputs><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>value1</l><l>value2</l><l>input</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="x"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="x"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value1</l><block var="input"/></block></script><script><block s="doSetVar"><l>value1</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doSetVar"><l>input</l><block s="evaluate"><block var="y"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="y"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value2</l><block var="input"/></block></script><script><block s="doSetVar"><l>value2</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doReport"><block s="reportDifference"><block var="value1"/><block var="value2"/></block></block></script></block></script></block-definition><block-definition s="%&apos;x&apos; * %&apos;y&apos;" type="reporter" category="snapython"><header></header><code>(&lt;#1&gt;*&lt;#2&gt;)</code><translations></translations><inputs><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>value1</l><l>value2</l><l>input</l><l>result</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="x"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="x"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value1</l><block var="input"/></block></script><script><block s="doSetVar"><l>value1</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doSetVar"><l>input</l><block s="evaluate"><block var="y"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="y"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value2</l><block var="input"/></block></script><script><block s="doSetVar"><l>value2</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doIfElse"><block s="reportVariadicAnd"><list><block s="reportIsA"><block var="value1"/><l><option>list</option></l></block><block s="reportIsA"><block var="value2"/><l><option>number</option></l></block></list></block><script><block s="doSetVar"><l>result</l><block s="reportMap"><block s="reifyReporter"><script></script><list></list></block><block var="value1"/></block></block><block s="doRepeat"><block s="reportDifference"><block var="value2"/><l>1</l></block><script><block s="doSetVar"><l>result</l><block s="reportConcatenatedLists"><list><block var="result"/><block var="value1"/></list></block></block></script></block><block s="doReport"><block var="result"/></block></script><script><block s="doReport"><block s="reportVariadicProduct"><list><block var="value1"/><block var="value2"/></list></block></block></script></block></script></block></script></block-definition><block-definition s="%&apos;x&apos; / %&apos;y&apos;" type="reporter" category="snapython"><header></header><code>(&lt;#1&gt;/&lt;#2&gt;)</code><translations></translations><inputs><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>value1</l><l>value2</l><l>input</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="x"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="x"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value1</l><block var="input"/></block></script><script><block s="doSetVar"><l>value1</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doSetVar"><l>input</l><block s="evaluate"><block var="y"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="y"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value2</l><block var="input"/></block></script><script><block s="doSetVar"><l>value2</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doReport"><block s="reportQuotient"><block var="value1"/><block var="value2"/></block></block></script></block></script></block-definition><block-definition s="%&apos;x&apos; // %&apos;y&apos;" type="reporter" category="snapython"><header></header><code>(&lt;#1&gt;//&lt;#2&gt;)</code><translations></translations><inputs><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>value1</l><l>value2</l><l>input</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="x"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="x"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value1</l><block var="input"/></block></script><script><block s="doSetVar"><l>value1</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doSetVar"><l>input</l><block s="evaluate"><block var="y"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="y"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value2</l><block var="input"/></block></script><script><block s="doSetVar"><l>value2</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doReport"><block s="reportMonadic"><l><option>floor</option></l><block s="reportQuotient"><block var="value1"/><block var="value2"/></block></block></block></script></block></script></block-definition><block-definition s="%&apos;x&apos; % %&apos;y&apos;" type="reporter" category="snapython"><header></header><code>(&lt;#1&gt;%&lt;#2&gt;)</code><translations></translations><inputs><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>value1</l><l>value2</l><l>input</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="x"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="x"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value1</l><block var="input"/></block></script><script><block s="doSetVar"><l>value1</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doSetVar"><l>input</l><block s="evaluate"><block var="y"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="y"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value2</l><block var="input"/></block></script><script><block s="doSetVar"><l>value2</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doReport"><block s="reportModulus"><block var="value1"/><block var="value2"/></block></block></script></block></script></block-definition><block-definition s="%&apos;x&apos; ** %&apos;y&apos;" type="reporter" category="snapython"><header></header><code>(&lt;#1&gt;**&lt;#2&gt;)</code><translations></translations><inputs><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>value1</l><l>value2</l><l>input</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="x"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="x"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value1</l><block var="input"/></block></script><script><block s="doSetVar"><l>value1</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doSetVar"><l>input</l><block s="evaluate"><block var="y"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="y"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value2</l><block var="input"/></block></script><script><block s="doSetVar"><l>value2</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doReport"><block s="reportPower"><block var="value1"/><block var="value2"/></block></block></script></block></script></block-definition><block-definition s="%&apos;var&apos; = %&apos;value&apos;" type="command" category="snapython"><header></header><code>&lt;#1&gt; = &lt;#2&gt;</code><translations></translations><inputs><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>v</l><l>input</l><l>varName</l><l>i</l><l>varText</l><l>varbody</l><l>brackets</l><l>varIndex</l><l>parent</l><l>realIndex</l><l>varlist</l></list></block><block s="doSetVar"><l>input</l><block s="evaluate"><block var="value"/><list></list></block></block><block s="doWarp"><script><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="value"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>v</l><block var="input"/></block></script><script><block s="doIfElse"><block s="reportIsA"><block var="input"/><l><option>text</option></l></block><script><block s="doSetVar"><l>v</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script><script><block s="doSetVar"><l>v</l><block var="input"/></block></script></block></script></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="var"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doRun"><block s="reifyScript"><script><block s="doSetVar"><l></l><l></l></block></script><list></list></block><list><block var="var"/><block var="v"/></list></block></script><script><block s="doSetVar"><l>i</l><l>1</l></block><block s="doSetVar"><l>varName</l><l></l></block><block s="doSetVar"><l>varText</l><block s="evaluate"><block var="var"/><list></list></block></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="varText"/></block><l>[</l></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="varText"/></block></list></block></list></block><script><block s="doSetVar"><l>varName</l><block s="reportJoinWords"><list><block var="varName"/><block s="reportLetter"><block var="i"/><block var="varText"/></block></list></block></block><block s="doChangeVar"><l>i</l><l>1</l></block></script></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="varText"/></block></list></block><script><block s="doSetVar"><l>varlist</l><block s="reportTextSplit"><block var="varText"/><l>.</l></block></block><block s="doIfElse"><block s="reportVariadicEquals"><list><block s="reportListAttribute"><l><option>length</option></l><block var="varlist"/></block><l>2</l></list></block><script><block s="doDeclareVariables"><list><l>objectname</l><l>object</l></list></block><block s="doSetVar"><l>objectname</l><block s="reportListItem"><l>1</l><block var="varlist"/></block></block><block s="doIfElse"><block s="reportIsA"><block s="reportObject"><block var="objectname"/></block><l><option>sprite</option></l></block><script><block s="doSetVar"><l>object</l><block s="reportObject"><block var="objectname"/></block></block></script><script><block s="doSetVar"><l>object</l><custom-block s="%txt"><block var="objectname"/></custom-block></block></script></block><block s="doIf"><block s="reportVariadicEquals"><list><block var="object"/><l>self</l></list></block><script><block s="doSetVar"><l>object</l><block s="reportObject"><l><option>myself</option></l></block></block></script><list></list></block><block s="doIf"><block s="reportNot"><block s="reportAskFor"><block var="object"/><block s="reifyReporter"><autolambda><custom-block s="does var %s exist?"><block s="reportListItem"><l>2</l><block var="varlist"/></block></custom-block></autolambda><list></list></block><list></list></block></block><script><block s="doTellTo"><block var="object"/><block s="reifyScript"><script><custom-block s="create %s var %mult%txt"><l>sprite</l><list><l></l></list></custom-block></script><list></list></block><list><block s="reportListItem"><l>2</l><block var="varlist"/></block></list></block></script><list></list></block><block s="doTellTo"><block var="object"/><block s="reifyScript"><script><block s="doSetVar"><l></l><l></l></block></script><list></list></block><list><block s="reportListItem"><l>2</l><block var="varlist"/></block><block var="v"/></list></block></script><script><block s="doIf"><block s="reportNot"><custom-block s="does var %s exist?"><block var="varText"/></custom-block></block><script><custom-block s="create %s var %mult%txt"><l>script</l><list><block var="varText"/></list></custom-block></script><list></list></block><custom-block s="set var %s to %s"><block var="varText"/><block var="v"/></custom-block></script></block></script><script><block s="doIfElse"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><custom-block s="var %s"><block var="varName"/></custom-block></custom-block><l>list</l></list></block><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><custom-block s="var %s"><block var="varName"/></custom-block></custom-block><l>tuple</l></list></block></list></block><script><block s="doIfElse"><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><custom-block s="var %s"><block var="varName"/></custom-block></custom-block><l>list</l></list></block><script><block s="doSetVar"><l>varbody</l><custom-block s="var %s"><block var="varName"/></custom-block></block></script><script><block s="doSetVar"><l>varbody</l><block s="reportListItem"><l>2</l><custom-block s="var %s"><block var="varName"/></custom-block></block></block></script></block><block s="doUntil"><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="varText"/></block></list></block><script><block s="doSetVar"><l>brackets</l><l>1</l></block><block s="doSetVar"><l>varIndex</l><l></l></block><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="varText"/></block><l>]</l></list></block><block s="reportVariadicEquals"><list><block var="brackets"/><l>0</l></list></block></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="varText"/></block></list></block></list></block><script><block s="doSetVar"><l>varIndex</l><block s="reportJoinWords"><list><block var="varIndex"/><block s="reportLetter"><block var="i"/><block var="varText"/></block></list></block></block><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>[</l><l>(</l><l>{</l></list></block><block s="reportLetter"><block var="i"/><block var="varText"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>1</l></block></script><list></list></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>]</l><l>)</l><l>}</l></list></block><block s="reportLetter"><block var="i"/><block var="varText"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>-1</l></block></script><list></list></block></script></block><block s="doIf"><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="varText"/></block><l>]</l></list></block><script><block s="doSetVar"><l>parent</l><block var="varbody"/></block><block s="doSetVar"><l>realIndex</l><block s="reportVariadicSum"><list><custom-block s="caculate %txt"><block var="varIndex"/></custom-block><l>1</l></list></block></block><block s="doSetVar"><l>varbody</l><block s="reportListItem"><block var="realIndex"/><block var="varbody"/></block></block></script><list></list></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="varText"/></block><l>[</l></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="varText"/></block></list></block></list></block><script><block s="doChangeVar"><l>i</l><l>1</l></block></script></block></script></block><block s="doReplaceInList"><block var="realIndex"/><block var="parent"/><block var="v"/></block></script><script><block s="doIfElse"><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><custom-block s="var %s"><block var="varName"/></custom-block></custom-block><l>dict</l></list></block><script><block s="doSetVar"><l>varbody</l><custom-block s="var %s"><block var="varName"/></custom-block></block><block s="doUntil"><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="varText"/></block></list></block><script><block s="doSetVar"><l>brackets</l><l>1</l></block><block s="doSetVar"><l>varIndex</l><l></l></block><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="varText"/></block><l>]</l></list></block><block s="reportVariadicEquals"><list><block var="brackets"/><l>0</l></list></block></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="varText"/></block></list></block></list></block><script><block s="doSetVar"><l>varIndex</l><block s="reportJoinWords"><list><block var="varIndex"/><block s="reportLetter"><block var="i"/><block var="varText"/></block></list></block></block><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>[</l><l>(</l><l>{</l></list></block><block s="reportLetter"><block var="i"/><block var="varText"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>1</l></block></script><list></list></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>]</l><l>)</l><l>}</l></list></block><block s="reportLetter"><block var="i"/><block var="varText"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>-1</l></block></script><list></list></block></script></block><block s="doIf"><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="varText"/></block><l>]</l></list></block><script><block s="doSetVar"><l>parent</l><block var="varbody"/></block><block s="doSetVar"><l>realIndex</l><custom-block s="caculate %txt"><block var="varIndex"/></custom-block></block><block s="doSetVar"><l>varbody</l><custom-block s="dict %l [ %txt ]"><block var="varbody"/><block var="realIndex"/></custom-block></block></script><list></list></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="varText"/></block><l>[</l></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="varText"/></block></list></block></list></block><script><block s="doChangeVar"><l>i</l><l>1</l></block></script></block></script></block><custom-block s="dict %l set key %txt value %s"><block var="parent"/><block var="realIndex"/><block var="v"/></custom-block></script><script><block s="doSetVar"><l>v</l><custom-block s="var %s"><block var="value"/></custom-block></block></script></block></script></block></script></block></script></block></script></block></script></block-definition><block-definition s="%&apos;varlist&apos; = %&apos;valuelist&apos;" type="command" category="snapython"><header></header><code>&lt;#1&gt; = &lt;#2&gt;</code><translations></translations><inputs><input type="%mult%anyUE"></input><input type="%mult%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>input</l><l>v</l><l>values</l><l>var</l></list></block><block s="doWarp"><script><block s="doIf"><block s="reportVariadicEquals"><list><block s="reportListAttribute"><l><option>length</option></l><block var="varlist"/></block><block s="reportListAttribute"><l><option>length</option></l><block var="valuelist"/></block></list></block><script><block s="doSetVar"><l>values</l><block s="reportNewList"><list></list></block></block><block s="doForEach"><l>value</l><block var="valuelist"/><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="value"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="value"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>v</l><block var="input"/></block></script><script><block s="doIfElse"><block s="reportIsA"><block var="input"/><l><option>text</option></l></block><script><block s="doSetVar"><l>v</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script><script><block s="doSetVar"><l>v</l><block var="input"/></block></script></block></script></block><block s="doAddToList"><block var="v"/><block var="values"/></block></script></block><block s="doFor"><l>i</l><l>1</l><block s="reportListAttribute"><l><option>length</option></l><block var="varlist"/></block><script><block s="doSetVar"><l>var</l><block s="reportListItem"><block var="i"/><block var="varlist"/></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="var"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doRun"><block s="reifyScript"><script><block s="doSetVar"><l></l><l></l></block></script><list></list></block><list><block var="var"/><block s="reportListItem"><block var="i"/><block var="values"/></block></list></block></script><script><block s="doRun"><block s="reifyScript"><script><custom-block s="%anyUE = %anyUE"><l></l><l></l></custom-block></script><list></list></block><list><block s="evaluate"><block var="var"/><list></list></block><block s="reportListItem"><block var="i"/><block var="values"/></block></list></block></script></block></script></block></script><list></list></block></script></block></script></block-definition><block-definition s="parse %&apos;value&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>v</l><l>items</l><l>text</l><l>brackets</l><l>i</l><l>buffer</l><l>key</l><l>valuetext</l><l>j</l><l>varName</l><l>varIndex</l><l>curList</l><l>varlist</l></list></block><block s="doWarp"><script><block s="doIf"><block s="reportIsA"><block var="value"/><l><option>text</option></l></block><script><block s="doIf"><block s="reportVariadicEquals"><list><block var="value"/><l>True</l></list></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script><list></list></block><block s="doIf"><block s="reportVariadicEquals"><list><block var="value"/><l>False</l></list></block><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script><list></list></block><block s="doIfElse"><block s="reportVariadicOr"><list><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><l>1</l><block var="value"/></block><l>"</l></list></block><block s="reportVariadicEquals"><list><block s="reportLetter"><block s="reportTextAttribute"><l><option>length</option></l><block var="value"/></block><block var="value"/></block><l>"</l></list></block></list></block><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><l>1</l><block var="value"/></block><l>&apos;</l></list></block><block s="reportVariadicEquals"><list><block s="reportLetter"><block s="reportTextAttribute"><l><option>length</option></l><block var="value"/></block><block var="value"/></block><l>&apos;</l></list></block></list></block></list></block><script><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportTextAttribute"><l><option>length</option></l><block var="value"/></block><l>2</l></list></block><script><block s="doSetVar"><l>v</l><block s="reportJoinWords"><list><block s="reportLetter"><block s="reportNumbers"><l>2</l><block s="reportDifference"><block s="reportTextAttribute"><l><option>length</option></l><block var="value"/></block><l>1</l></block></block><block var="value"/></block></list></block></block></script><script><block s="doSetVar"><l>v</l><l></l></block></script></block></script><script><block s="doIfElse"><block s="reportVariadicOr"><list><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><l>1</l><block var="value"/></block><l>[</l></list></block><block s="reportVariadicEquals"><list><block s="reportLetter"><block s="reportTextAttribute"><l><option>length</option></l><block var="value"/></block><block var="value"/></block><l>]</l></list></block></list></block><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><l>1</l><block var="value"/></block><l>(</l></list></block><block s="reportVariadicEquals"><list><block s="reportLetter"><block s="reportTextAttribute"><l><option>length</option></l><block var="value"/></block><block var="value"/></block><l>)</l></list></block></list></block></list></block><script><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportTextAttribute"><l><option>length</option></l><block var="value"/></block><l>2</l></list></block><script><block s="doSetVar"><l>text</l><block s="reportJoinWords"><list><block s="reportLetter"><block s="reportNumbers"><l>2</l><block s="reportDifference"><block s="reportTextAttribute"><l><option>length</option></l><block var="value"/></block><l>1</l></block></block><block var="value"/></block></list></block></block></script><script><block s="doSetVar"><l>text</l><l></l></block></script></block><block s="doSetVar"><l>i</l><l>1</l></block><block s="doSetVar"><l>v</l><block s="reportNewList"><list></list></block></block><block s="doUntil"><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="text"/></block></list></block><script><block s="doSetVar"><l>brackets</l><l>0</l></block><block s="doSetVar"><l>buffer</l><l></l></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="text"/></block><l>,</l></list></block><block s="reportVariadicEquals"><list><block var="brackets"/><l>0</l></list></block></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="text"/></block></list></block></list></block><script><block s="doSetVar"><l>buffer</l><block s="reportJoinWords"><list><block var="buffer"/><block s="reportLetter"><block var="i"/><block var="text"/></block></list></block></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>[</l><l>(</l><l>{</l></list></block><block s="reportLetter"><block var="i"/><block var="text"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>1</l></block></script><list></list></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>]</l><l>)</l><l>}</l></list></block><block s="reportLetter"><block var="i"/><block var="text"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>-1</l></block></script><list></list></block><block s="doChangeVar"><l>i</l><l>1</l></block></script></block><block s="doAddToList"><custom-block s="caculate %txt"><block var="buffer"/></custom-block><block var="v"/></block><block s="doIf"><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="text"/></block><l>,</l></list></block><script><block s="doChangeVar"><l>i</l><l>1</l></block></script><list></list></block></script></block><block s="doIfElse"><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><l>1</l><block var="value"/></block><l>[</l></list></block><block s="reportVariadicEquals"><list><block s="reportLetter"><block s="reportTextAttribute"><l><option>length</option></l><block var="value"/></block><block var="value"/></block><l>]</l></list></block></list></block><script><block s="doReport"><block var="v"/></block></script><script><block s="doReport"><block s="reportNewList"><list><l>tuple</l><block var="v"/></list></block></block></script></block></script><script><block s="doIfElse"><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><l>1</l><block var="value"/></block><l>{</l></list></block><block s="reportVariadicEquals"><list><block s="reportLetter"><block s="reportTextAttribute"><l><option>length</option></l><block var="value"/></block><block var="value"/></block><l>}</l></list></block></list></block><script><block s="doSetVar"><l>text</l><block s="reportJoinWords"><list><block s="reportLetter"><block s="reportNumbers"><l>2</l><block s="reportDifference"><block s="reportTextAttribute"><l><option>length</option></l><block var="value"/></block><l>1</l></block></block><block var="value"/></block></list></block></block><block s="doIf"><custom-block s="%b or %b"><custom-block s="%anyUE == %anyUE"><custom-block s="%anyUE . %txt ( %mult%anyUE ）"><block var="text"/><l>strip</l><list></list></custom-block><l></l></custom-block><custom-block s="%anyUE == %anyUE"><block var="text"/><l>&apos;}{&apos;</l></custom-block></custom-block><script><block s="doReport"><block s="reportNewList"><list><l>dict</l><block s="reportNewList"><list></list></block></list></block></block></script><list></list></block><block s="doSetVar"><l>i</l><l>1</l></block><block s="doSetVar"><l>v</l><block s="reportNewList"><list></list></block></block><block s="doUntil"><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="text"/></block></list></block><script><block s="doSetVar"><l>brackets</l><l>0</l></block><block s="doSetVar"><l>buffer</l><l></l></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="text"/></block><l>,</l></list></block><block s="reportVariadicEquals"><list><block var="brackets"/><l>0</l></list></block></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="text"/></block></list></block></list></block><script><block s="doSetVar"><l>buffer</l><block s="reportJoinWords"><list><block var="buffer"/><block s="reportLetter"><block var="i"/><block var="text"/></block></list></block></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>[</l><l>(</l><l>{</l></list></block><block s="reportLetter"><block var="i"/><block var="text"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>1</l></block></script><list></list></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>]</l><l>)</l><l>}</l></list></block><block s="reportLetter"><block var="i"/><block var="text"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>-1</l></block></script><list></list></block><block s="doChangeVar"><l>i</l><l>1</l></block></script></block><block s="doSetVar"><l>key</l><l></l></block><block s="doSetVar"><l>valuetext</l><l></l></block><block s="doSetVar"><l>j</l><l>1</l></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="j"/><block var="buffer"/></block><l>:</l></list></block><block s="reportVariadicGreaterThan"><list><block var="j"/><block s="reportTextAttribute"><l><option>length</option></l><block var="buffer"/></block></list></block></list></block><script><block s="doSetVar"><l>key</l><block s="reportJoinWords"><list><block var="key"/><block s="reportLetter"><block var="j"/><block var="buffer"/></block></list></block></block><block s="doChangeVar"><l>j</l><l>1</l></block></script></block><block s="doIf"><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="j"/><block var="buffer"/></block><l>:</l></list></block><script><block s="doChangeVar"><l>j</l><l>1</l></block></script><list></list></block><block s="doIf"><block s="reportVariadicLessThan"><list><block var="j"/><block s="reportVariadicSum"><list><block s="reportTextAttribute"><l><option>length</option></l><block var="buffer"/></block><l>1</l></list></block></list></block><script><block s="doSetVar"><l>valuetext</l><block s="reportJoinWords"><list><block s="reportLetter"><block s="reportNumbers"><block var="j"/><block s="reportTextAttribute"><l><option>length</option></l><block var="buffer"/></block></block><block var="buffer"/></block></list></block></block></script><list></list></block><block s="doAddToList"><custom-block s="key: %txt value: %s"><custom-block s="caculate %txt"><block var="key"/></custom-block><custom-block s="caculate %txt"><block var="valuetext"/></custom-block></custom-block><block var="v"/></block><block s="doIf"><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="text"/></block><l>,</l></list></block><script><block s="doChangeVar"><l>i</l><l>1</l></block></script><list></list></block></script></block><block s="doReport"><block s="reportNewList"><list><l>dict</l><block var="v"/></list></block></block></script><script><block s="doSetVar"><l>i</l><l>1</l></block><block s="doSetVar"><l>varName</l><l></l></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="value"/></block><l>[</l></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="value"/></block></list></block></list></block><script><block s="doSetVar"><l>varName</l><block s="reportJoinWords"><list><block var="varName"/><block s="reportLetter"><block var="i"/><block var="value"/></block></list></block></block><block s="doChangeVar"><l>i</l><l>1</l></block></script></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="value"/></block></list></block><script><block s="doSetVar"><l>varlist</l><block s="reportTextSplit"><block var="value"/><l>.</l></block></block><block s="doIfElse"><block s="reportVariadicEquals"><list><block s="reportListAttribute"><l><option>length</option></l><block var="varlist"/></block><l>2</l></list></block><script><block s="doDeclareVariables"><list><l>objectname</l><l>object</l></list></block><block s="doSetVar"><l>objectname</l><block s="reportListItem"><l>1</l><block var="varlist"/></block></block><block s="doIfElse"><block s="reportIsA"><block s="reportObject"><block var="objectname"/></block><l><option>sprite</option></l></block><script><block s="doSetVar"><l>object</l><block s="reportObject"><block var="objectname"/></block></block></script><script><block s="doSetVar"><l>object</l><custom-block s="%txt"><block var="objectname"/></custom-block></block></script></block><block s="doIf"><block s="reportVariadicEquals"><list><block var="object"/><l>self</l></list></block><script><block s="doSetVar"><l>object</l><block s="reportObject"><l><option>myself</option></l></block></block></script><list></list></block><block s="doSetVar"><l>v</l><block s="reportAskFor"><block var="object"/><block s="reifyReporter"><autolambda><custom-block s="var %s"><block s="reportListItem"><l>2</l><block var="varlist"/></block></custom-block></autolambda><list></list></block><list></list></block></block></script><script><block s="doIfElse"><custom-block s="does var %s exist?"><block var="value"/></custom-block><script><block s="doSetVar"><l>v</l><custom-block s="var %s"><block var="value"/></custom-block></block></script><script><block s="doIfElse"><custom-block s="%txt doenst include any of %txt"><block var="value"/><l>+-*/%</l></custom-block><script><block s="doReport"><block var="value"/></block></script><script><block s="doReport"><custom-block s="caculate %txt"><block var="value"/></custom-block></block></script></block></script></block></script></block></script><script><block s="doIfElse"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><custom-block s="var %s"><block var="varName"/></custom-block></custom-block><l>list</l></list></block><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><custom-block s="var %s"><block var="varName"/></custom-block></custom-block><l>tuple</l></list></block></list></block><script><block s="doIfElse"><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><custom-block s="var %s"><block var="varName"/></custom-block></custom-block><l>list</l></list></block><script><block s="doSetVar"><l>v</l><custom-block s="var %s"><block var="varName"/></custom-block></block></script><script><block s="doSetVar"><l>v</l><block s="reportListItem"><l>2</l><custom-block s="var %s"><block var="varName"/></custom-block></block></block></script></block><block s="doUntil"><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="value"/></block></list></block><script><block s="doSetVar"><l>brackets</l><l>1</l></block><block s="doSetVar"><l>varIndex</l><l></l></block><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="value"/></block><l>]</l></list></block><block s="reportVariadicEquals"><list><block var="brackets"/><l>0</l></list></block></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="value"/></block></list></block></list></block><script><block s="doSetVar"><l>varIndex</l><block s="reportJoinWords"><list><block var="varIndex"/><block s="reportLetter"><block var="i"/><block var="value"/></block></list></block></block><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>[</l><l>(</l><l>{</l></list></block><block s="reportLetter"><block var="i"/><block var="value"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>1</l></block></script><list></list></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>]</l><l>)</l><l>}</l></list></block><block s="reportLetter"><block var="i"/><block var="value"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>-1</l></block></script><list></list></block></script></block><block s="doIf"><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="value"/></block><l>]</l></list></block><script><block s="doSetVar"><l>v</l><custom-block s="slice %l %txt"><block var="v"/><block var="varIndex"/></custom-block></block></script><list></list></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="value"/></block><l>[</l></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="value"/></block></list></block></list></block><script><block s="doChangeVar"><l>i</l><l>1</l></block></script></block></script></block></script><script><block s="doIfElse"><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><custom-block s="var %s"><block var="varName"/></custom-block></custom-block><l>dict</l></list></block><script><block s="doSetVar"><l>v</l><custom-block s="var %s"><block var="varName"/></custom-block></block><block s="doUntil"><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="value"/></block></list></block><script><block s="doSetVar"><l>brackets</l><l>1</l></block><block s="doSetVar"><l>varIndex</l><l></l></block><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="value"/></block><l>]</l></list></block><block s="reportVariadicEquals"><list><block var="brackets"/><l>0</l></list></block></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="value"/></block></list></block></list></block><script><block s="doSetVar"><l>varIndex</l><block s="reportJoinWords"><list><block var="varIndex"/><block s="reportLetter"><block var="i"/><block var="value"/></block></list></block></block><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>[</l><l>(</l><l>{</l></list></block><block s="reportLetter"><block var="i"/><block var="value"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>1</l></block></script><list></list></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>]</l><l>)</l><l>}</l></list></block><block s="reportLetter"><block var="i"/><block var="value"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>-1</l></block></script><list></list></block></script></block><block s="doIf"><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="value"/></block><l>]</l></list></block><script><block s="doSetVar"><l>v</l><custom-block s="dict %l [ %txt ]"><block var="v"/><custom-block s="caculate %txt"><block var="varIndex"/></custom-block></custom-block></block></script><list></list></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="value"/></block><l>[</l></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="value"/></block></list></block></list></block><script><block s="doChangeVar"><l>i</l><l>1</l></block></script></block></script></block></script><script><block s="doSetVar"><l>v</l><custom-block s="var %s"><block var="value"/></custom-block></block></script></block></script></block></script></block></script></block></script></block></script></block><block s="doReport"><block var="v"/></block></script><list><l><bool>true</bool></l><script><block s="doReport"><block var="value"/></block></script></list></block></script></block></script></block-definition><block-definition s="key: %&apos;key&apos; value: %&apos;value&apos;" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs><input type="%txt"></input><input type="%s"></input></inputs><script><block s="doReport"><block s="reportNewList"><list><block var="key"/><block var="value"/></list></block></block></script></block-definition><block-definition s="dict %&apos;pairs&apos;" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs><input type="%mult%l"></input></inputs><script><block s="doReport"><block s="reportNewList"><list><l>dict</l><block var="pairs"/></list></block></block></script></block-definition><block-definition s="dict %&apos;dict&apos; [ %&apos;key&apos; ]" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs><input type="%l"></input><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>pairs</l></list></block><block s="doWarp"><script><block s="doIf"><block s="reportVariadicNotEquals"><list><custom-block s="type( %anyUE )"><block var="dict"/></custom-block><l>dict</l></list></block><script><block s="doReport"><l></l></block></script><list></list></block><block s="doSetVar"><l>pairs</l><block s="reportKeep"><block s="reifyPredicate"><autolambda><block s="reportVariadicEquals"><list><block s="reportListItem"><l>1</l><l/></block><block var="key"/></list></block></autolambda><list></list></block><block s="reportListItem"><l>2</l><block var="dict"/></block></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block var="pairs"/></block><l>0</l></list></block><script><block s="doReport"><block s="reportListItem"><l>2</l><block s="reportListItem"><l>1</l><block var="pairs"/></block></block></block></script><script><block s="doReport"><l></l></block></script></block></script></block></script></block-definition><block-definition s="dict %&apos;dict&apos; set key %&apos;key&apos; value %&apos;value&apos;" type="command" category="variables"><header></header><code></code><translations></translations><inputs><input type="%l"></input><input type="%txt"></input><input type="%s"></input></inputs><script><block s="doDeclareVariables"><list><l>pairs</l></list></block><block s="doWarp"><script><block s="doIf"><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><block var="dict"/></custom-block><l>dict</l></list></block><script><block s="doSetVar"><l>pairs</l><block s="reportKeep"><block s="reifyPredicate"><autolambda><block s="reportVariadicEquals"><list><block s="reportListItem"><l>1</l><l/></block><block var="key"/></list></block></autolambda><list></list></block><block s="reportListItem"><l>2</l><block var="dict"/></block></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block var="pairs"/></block><l>0</l></list></block><script><block s="doReplaceInList"><l>2</l><block s="reportListItem"><l>1</l><block var="pairs"/></block><block var="value"/></block></script><script><custom-block s="dict %l append pair %l"><block var="dict"/><custom-block s="key: %txt value: %s"><block var="key"/><block var="value"/></custom-block></custom-block></script></block></script><list></list></block></script></block></script></block-definition><block-definition s="dict %&apos;dict&apos; append pair %&apos;pair&apos;" type="command" category="variables"><header></header><code></code><translations></translations><inputs><input type="%l"></input><input type="%l"></input></inputs><script><block s="doIf"><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><block var="dict"/></custom-block><l>dict</l></list></block><block s="reportVariadicEquals"><list><block s="reportListAttribute"><l><option>length</option></l><block var="pair"/></block><l>2</l></list></block><block s="reportIsA"><block s="reportListItem"><l>1</l><block var="pair"/></block><l><option>text</option></l></block></list></block><script><block s="doAddToList"><block var="pair"/><block s="reportListItem"><l>2</l><block var="dict"/></block></block></script><list></list></block></script></block-definition><block-definition s="global variables %&apos;names&apos;" type="command" category="variables"><header></header><code></code><translations>pt:cria as variáveis globais _&#xD;</translations><inputs><input type="%mult%txt"></input></inputs><script><block s="doForEach"><l>each item</l><block var="names"/><script><block s="doRun"><block s="reportJSFunction"><list><l>name</l></list><l>if ((typeof name) != "string") {&#xD;    throw new Error("name isn&apos;t a string: " + name);&#xD;}&#xD;if (name != "") this.addVariable(name, true);</l></block><list><block var="each item"/></list></block></script></block><block s="doRun"><block s="reportJSFunction"><list></list><l>var ide = this.parentThatIsA(IDE_Morph);&#xD;ide.flushBlocksCache(&apos;variables&apos;); // b/c of inheritance&#xD;ide.refreshPalette();</l></block><list></list></block></script></block-definition><block-definition s="create %&apos;_scope&apos; var %&apos;_names&apos;" type="command" category="variables"><comment x="0" y="0" w="146" collapsed="false">This block creates  new variables on the selected scope: global (for all sprites), sprite (for this sprite only) or script (only for that blocks stack) with the names given (in &apos;names&apos; list).&#xD;&#xD;If there is already a variable with that name in that scope, it does nothing: no errors and no overwrites.</comment><header></header><code></code><translations>pt:cria as variáveis _ _&#xD;ca:crea les _ variables _&#xD;es:crear las _ variables _&#xD;de:erstellen _ var _&#xD;</translations><inputs><input type="%s" readonly="true">global<options>global&#xD;sprite&#xD;script</options></input><input type="%mult%txt"></input></inputs><script><block s="doWarp"><script><block s="doForEach"><l>_item</l><block var="_names"/><script><block s="doApplyExtension"><l>var_declare(scope, name)</l><list><block var="_scope"/><block var="_item"/></list></block></script></block></script></block></script></block-definition><block-definition s="delete var %&apos;_names&apos;" type="command" category="variables"><comment x="0" y="0" w="217" collapsed="false">This block deletes all the variables with the names given (inside input list).&#xD;&#xD;Each name will make only one variable deletion, and this will be the variable found following the scope order: &apos;script&apos; -&gt; &apos;sprite&apos; -&gt; &apos;global&apos;.&#xD;&#xD;If we have a &quot;testing&quot; sprite variable and also a &quot;testing&quot; global one, deleting &quot;testing&quot; will delete only the sprite one (Yes! we can also do &quot;delete var (testing, testing)&quot; to delete both.&#xD;&#xD;If one variable does not exists (in any scope) an error happens, stopping block action in that point. You can check it before with the &quot;does var (name) exists?&quot;block. </comment><header></header><code></code><translations>pt:remove as variáveis _&#xD;ca:esborra les variables _&#xD;es:borrar variables _&#xD;de:löschen var _&#xD;</translations><inputs><input type="%mult%txt"></input></inputs><script><block s="doWarp"><script><block s="doForEach"><l>_item</l><block var="_names"/><script><block s="doApplyExtension"><l>err_ignore</l><list><custom-block s="var %s"><block var="_item"/></custom-block></list></block><block s="doApplyExtension"><l>var_delete(name)</l><list><block var="_item"/></list></block></script></block></script></block></script></block-definition><block-definition s="toString %&apos;text&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>obj</l><l>input</l><l>output</l><l>keyValue</l><l>i</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="text"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="text"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>obj</l><block var="input"/></block></script><script><block s="doSetVar"><l>obj</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doIfElse"><block s="reportVariadicOr"><list><block s="reportIsA"><block var="obj"/><l><option>text</option></l></block><block s="reportIsA"><block var="obj"/><l><option>number</option></l></block></list></block><script><block s="doReport"><block var="obj"/></block></script><script><block s="doIfElse"><block s="reportIsA"><block var="obj"/><l><option>Boolean</option></l></block><script><block s="doIfElse"><block var="obj"/><script><block s="doReport"><l>True</l></block></script><script><block s="doReport"><l>False</l></block></script></block></script><script><block s="doIfElse"><block s="reportIsA"><block var="obj"/><l><option>sprite</option></l></block><script><block s="doReport"><block s="reportAskFor"><block var="obj"/><block s="reifyReporter"><autolambda><block s="reportGet"><l><option>name</option></l></block></autolambda><list></list></block><list></list></block></block></script><script><block s="doIfElse"><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><block var="obj"/></custom-block><l>list</l></list></block><script><block s="doSetVar"><l>output</l><l>[</l></block><block s="doSetVar"><l>i</l><l>1</l></block><block s="doUntil"><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportDifference"><block s="reportListAttribute"><l><option>length</option></l><block var="obj"/></block><l>1</l></block></list></block><script><block s="doSetVar"><l>output</l><block s="reportJoinWords"><list><block var="output"/><custom-block s="toString %anyUE"><block s="reportListItem"><block var="i"/><block var="obj"/></block></custom-block><l>,</l></list></block></block><block s="doChangeVar"><l>i</l><l>1</l></block></script></block><block s="doSetVar"><l>output</l><block s="reportJoinWords"><list><block var="output"/><custom-block s="toString %anyUE"><block s="reportListItem"><block s="reportListAttribute"><l><option>length</option></l><block var="obj"/></block><block var="obj"/></block></custom-block><l>]</l></list></block></block><block s="doReport"><block var="output"/></block></script><script><block s="doIfElse"><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><block var="obj"/></custom-block><l>dict</l></list></block><script><block s="doSetVar"><l>obj</l><block s="reportListItem"><l>2</l><block var="obj"/></block></block><block s="doSetVar"><l>output</l><l>{</l></block><block s="doSetVar"><l>i</l><l>1</l></block><block s="doUntil"><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportDifference"><block s="reportListAttribute"><l><option>length</option></l><block var="obj"/></block><l>1</l></block></list></block><script><block s="doSetVar"><l>keyValue</l><block s="reportListItem"><block var="i"/><block var="obj"/></block></block><block s="doSetVar"><l>output</l><block s="reportJoinWords"><list><block var="output"/><l>"</l><block s="reportListItem"><l>1</l><block var="keyValue"/></block><l>"</l><l>:</l><custom-block s="toString %anyUE"><block s="reportListItem"><l>2</l><block var="keyValue"/></block></custom-block><l>,</l></list></block></block><block s="doChangeVar"><l>i</l><l>1</l></block></script></block><block s="doSetVar"><l>keyValue</l><block s="reportListItem"><block s="reportListAttribute"><l><option>length</option></l><block var="obj"/></block><block var="obj"/></block></block><block s="doSetVar"><l>output</l><block s="reportJoinWords"><list><block var="output"/><l>"</l><block s="reportListItem"><l>1</l><block var="keyValue"/></block><l>"</l><l>:</l><custom-block s="toString %anyUE"><block s="reportListItem"><l>2</l><block var="keyValue"/></block></custom-block><l>}</l></list></block></block><block s="doReport"><block var="output"/></block></script><script><block s="doIfElse"><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><block var="obj"/></custom-block><l>tuple</l></list></block><script><block s="doSetVar"><l>obj</l><block s="reportListItem"><l>2</l><block var="obj"/></block></block><block s="doSetVar"><l>output</l><l>(</l></block><block s="doFor"><l>i</l><l>1</l><block s="reportDifference"><block s="reportListAttribute"><l><option>length</option></l><block var="obj"/></block><l>1</l></block><script><block s="doSetVar"><l>output</l><block s="reportJoinWords"><list><block var="output"/><custom-block s="toString %anyUE"><block s="reportListItem"><block var="i"/><block var="obj"/></block></custom-block><l>,</l></list></block></block></script></block><block s="doSetVar"><l>output</l><block s="reportJoinWords"><list><block var="output"/><custom-block s="toString %anyUE"><block s="reportListItem"><block s="reportListAttribute"><l><option>length</option></l><block var="obj"/></block><block var="obj"/></block></custom-block><l>)</l></list></block></block><block s="doReport"><block var="output"/></block></script><script><block s="doReport"><l></l></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block-definition><block-definition s="%&apos;var&apos; += %&apos;value&apos;" type="command" category="snapython"><header></header><code>&lt;#1&gt; += &lt;#2&gt;</code><translations></translations><inputs><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>v</l><l>input</l><l>varName</l><l>i</l><l>varText</l><l>varbody</l><l>brackets</l><l>varIndex</l><l>parent</l><l>realIndex</l><l>varlist</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="value"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="value"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>v</l><block var="input"/></block></script><script><block s="doIfElse"><block s="reportIsA"><block var="input"/><l><option>text</option></l></block><script><block s="doSetVar"><l>v</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script><script><block s="doSetVar"><l>v</l><block var="input"/></block></script></block></script></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="var"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doRun"><block s="reifyScript"><script><block s="doChangeVar"><l></l><l></l></block></script><list></list></block><list><block var="var"/><block var="v"/></list></block></script><script><block s="doSetVar"><l>i</l><l>1</l></block><block s="doSetVar"><l>varName</l><l></l></block><block s="doSetVar"><l>varText</l><block s="evaluate"><block var="var"/><list></list></block></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="varText"/></block><l>[</l></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="varText"/></block></list></block></list></block><script><block s="doSetVar"><l>varName</l><block s="reportJoinWords"><list><block var="varName"/><block s="reportLetter"><block var="i"/><block var="varText"/></block></list></block></block><block s="doChangeVar"><l>i</l><l>1</l></block></script></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="varText"/></block></list></block><script><block s="doSetVar"><l>varlist</l><block s="reportTextSplit"><block var="varText"/><l>.</l></block></block><block s="doIfElse"><block s="reportVariadicEquals"><list><block s="reportListAttribute"><l><option>length</option></l><block var="varlist"/></block><l>2</l></list></block><script><block s="doDeclareVariables"><list><l>objectname</l><l>object</l></list></block><block s="doSetVar"><l>objectname</l><block s="reportListItem"><l>1</l><block var="varlist"/></block></block><block s="doIfElse"><block s="reportIsA"><block s="reportObject"><block var="objectname"/></block><l><option>sprite</option></l></block><script><block s="doSetVar"><l>object</l><block s="reportObject"><block var="objectname"/></block></block></script><script><block s="doSetVar"><l>object</l><custom-block s="%txt"><block var="objectname"/></custom-block></block></script></block><block s="doIf"><block s="reportVariadicEquals"><list><block var="object"/><l>self</l></list></block><script><block s="doSetVar"><l>object</l><block s="reportObject"><l><option>myself</option></l></block></block></script><list></list></block><block s="doTellTo"><block var="object"/><block s="reifyScript"><script><block s="doChangeVar"><l></l><l></l></block></script><list></list></block><list><block s="reportListItem"><l>2</l><block var="varlist"/></block><block var="v"/></list></block></script><script><block s="doIf"><custom-block s="does var %s exist?"><block var="varText"/></custom-block><script><custom-block s="set var %s to %s"><block var="varText"/><block s="reportVariadicSum"><list><custom-block s="var %s"><block var="varText"/></custom-block><block var="v"/></list></block></custom-block></script><list></list></block></script></block></script><script><block s="doIfElse"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><custom-block s="var %s"><block var="varName"/></custom-block></custom-block><l>list</l></list></block><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><custom-block s="var %s"><block var="varName"/></custom-block></custom-block><l>tuple</l></list></block></list></block><script><block s="doIfElse"><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><custom-block s="var %s"><block var="varName"/></custom-block></custom-block><l>list</l></list></block><script><block s="doSetVar"><l>varbody</l><custom-block s="var %s"><block var="varName"/></custom-block></block></script><script><block s="doSetVar"><l>varbody</l><block s="reportListItem"><l>2</l><custom-block s="var %s"><block var="varName"/></custom-block></block></block></script></block><block s="doUntil"><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="varText"/></block></list></block><script><block s="doSetVar"><l>brackets</l><l>1</l></block><block s="doSetVar"><l>varIndex</l><l></l></block><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="varText"/></block><l>]</l></list></block><block s="reportVariadicEquals"><list><block var="brackets"/><l>0</l></list></block></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="varText"/></block></list></block></list></block><script><block s="doSetVar"><l>varIndex</l><block s="reportJoinWords"><list><block var="varIndex"/><block s="reportLetter"><block var="i"/><block var="varText"/></block></list></block></block><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>[</l><l>(</l><l>{</l></list></block><block s="reportLetter"><block var="i"/><block var="varText"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>1</l></block></script><list></list></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>]</l><l>)</l><l>}</l></list></block><block s="reportLetter"><block var="i"/><block var="varText"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>-1</l></block></script><list></list></block></script></block><block s="doIf"><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="varText"/></block><l>]</l></list></block><script><block s="doSetVar"><l>parent</l><block var="varbody"/></block><block s="doSetVar"><l>realIndex</l><block s="reportVariadicSum"><list><custom-block s="caculate %txt"><block var="varIndex"/></custom-block><l>1</l></list></block></block><block s="doSetVar"><l>varbody</l><block s="reportListItem"><block var="realIndex"/><block var="varbody"/></block></block></script><list></list></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="varText"/></block><l>[</l></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="varText"/></block></list></block></list></block><script><block s="doChangeVar"><l>i</l><l>1</l></block></script></block></script></block><block s="doReplaceInList"><block var="realIndex"/><block var="parent"/><block s="reportVariadicSum"><list><block s="reportListItem"><block var="realIndex"/><block var="parent"/></block><block var="v"/></list></block></block></script><script><block s="doIfElse"><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><custom-block s="var %s"><block var="varName"/></custom-block></custom-block><l>dict</l></list></block><script><block s="doSetVar"><l>varbody</l><custom-block s="var %s"><block var="varName"/></custom-block></block><block s="doUntil"><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="varText"/></block></list></block><script><block s="doSetVar"><l>brackets</l><l>1</l></block><block s="doSetVar"><l>varIndex</l><l></l></block><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="varText"/></block><l>]</l></list></block><block s="reportVariadicEquals"><list><block var="brackets"/><l>0</l></list></block></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="varText"/></block></list></block></list></block><script><block s="doSetVar"><l>varIndex</l><block s="reportJoinWords"><list><block var="varIndex"/><block s="reportLetter"><block var="i"/><block var="varText"/></block></list></block></block><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>[</l><l>(</l><l>{</l></list></block><block s="reportLetter"><block var="i"/><block var="varText"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>1</l></block></script><list></list></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>]</l><l>)</l><l>}</l></list></block><block s="reportLetter"><block var="i"/><block var="varText"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>-1</l></block></script><list></list></block></script></block><block s="doIf"><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="varText"/></block><l>]</l></list></block><script><block s="doSetVar"><l>parent</l><block var="varbody"/></block><block s="doSetVar"><l>realIndex</l><custom-block s="caculate %txt"><block var="varIndex"/></custom-block></block><block s="doSetVar"><l>varbody</l><custom-block s="dict %l [ %txt ]"><block var="varbody"/><block var="realIndex"/></custom-block></block></script><list></list></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="varText"/></block><l>[</l></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="varText"/></block></list></block></list></block><script><block s="doChangeVar"><l>i</l><l>1</l></block></script></block></script></block><custom-block s="dict %l set key %txt value %s"><block var="parent"/><block var="realIndex"/><block s="reportVariadicSum"><list><custom-block s="dict %l [ %txt ]"><block var="parent"/><block var="realIndex"/></custom-block><block var="v"/></list></block></custom-block></script><script><block s="doSetVar"><l>v</l><custom-block s="var %s"><block var="value"/></custom-block></block></script></block></script></block></script></block></script></block></script></block></script></block-definition><block-definition s="%&apos;var&apos; -= %&apos;value&apos;" type="command" category="snapython"><header></header><code>&lt;#1&gt; -= &lt;#2&gt;</code><translations></translations><inputs><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>v</l><l>input</l><l>varName</l><l>i</l><l>varText</l><l>varbody</l><l>brackets</l><l>varIndex</l><l>parent</l><l>realIndex</l><l>varlist</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="value"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="value"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>v</l><block var="input"/></block></script><script><block s="doIfElse"><block s="reportIsA"><block var="input"/><l><option>text</option></l></block><script><block s="doSetVar"><l>v</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script><script><block s="doSetVar"><l>v</l><block var="input"/></block></script></block></script></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="var"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doRun"><block s="reifyScript"><script><block s="doChangeVar"><l></l><l></l></block></script><list></list></block><list><block var="var"/><block s="reportMonadic"><l><option>neg</option></l><block var="v"/></block></list></block></script><script><block s="doSetVar"><l>i</l><l>1</l></block><block s="doSetVar"><l>varName</l><l></l></block><block s="doSetVar"><l>varText</l><block s="evaluate"><block var="var"/><list></list></block></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="varText"/></block><l>[</l></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="varText"/></block></list></block></list></block><script><block s="doSetVar"><l>varName</l><block s="reportJoinWords"><list><block var="varName"/><block s="reportLetter"><block var="i"/><block var="varText"/></block></list></block></block><block s="doChangeVar"><l>i</l><l>1</l></block></script></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="varText"/></block></list></block><script><block s="doSetVar"><l>varlist</l><block s="reportTextSplit"><block var="varText"/><l>.</l></block></block><block s="doIfElse"><block s="reportVariadicEquals"><list><block s="reportListAttribute"><l><option>length</option></l><block var="varlist"/></block><l>2</l></list></block><script><block s="doDeclareVariables"><list><l>objectname</l><l>object</l></list></block><block s="doSetVar"><l>objectname</l><block s="reportListItem"><l>1</l><block var="varlist"/></block></block><block s="doIfElse"><block s="reportIsA"><block s="reportObject"><block var="objectname"/></block><l><option>sprite</option></l></block><script><block s="doSetVar"><l>object</l><block s="reportObject"><block var="objectname"/></block></block></script><script><block s="doSetVar"><l>object</l><custom-block s="%txt"><block var="objectname"/></custom-block></block></script></block><block s="doIf"><block s="reportVariadicEquals"><list><block var="object"/><l>self</l></list></block><script><block s="doSetVar"><l>object</l><block s="reportObject"><l><option>myself</option></l></block></block></script><list></list></block><block s="doTellTo"><block var="object"/><block s="reifyScript"><script><block s="doChangeVar"><l></l><l></l></block></script><list></list></block><list><block s="reportListItem"><l>2</l><block var="varlist"/></block><block s="reportMonadic"><l><option>neg</option></l><block var="v"/></block></list></block></script><script><block s="doIf"><custom-block s="does var %s exist?"><block var="varText"/></custom-block><script><custom-block s="set var %s to %s"><block var="varText"/><block s="reportDifference"><custom-block s="var %s"><block var="varText"/></custom-block><block var="v"/></block></custom-block></script><list></list></block></script></block></script><script><block s="doIfElse"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><custom-block s="var %s"><block var="varName"/></custom-block></custom-block><l>list</l></list></block><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><custom-block s="var %s"><block var="varName"/></custom-block></custom-block><l>tuple</l></list></block></list></block><script><block s="doIfElse"><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><custom-block s="var %s"><block var="varName"/></custom-block></custom-block><l>list</l></list></block><script><block s="doSetVar"><l>varbody</l><custom-block s="var %s"><block var="varName"/></custom-block></block></script><script><block s="doSetVar"><l>varbody</l><block s="reportListItem"><l>2</l><custom-block s="var %s"><block var="varName"/></custom-block></block></block></script></block><block s="doUntil"><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="varText"/></block></list></block><script><block s="doSetVar"><l>brackets</l><l>1</l></block><block s="doSetVar"><l>varIndex</l><l></l></block><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="varText"/></block><l>]</l></list></block><block s="reportVariadicEquals"><list><block var="brackets"/><l>0</l></list></block></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="varText"/></block></list></block></list></block><script><block s="doSetVar"><l>varIndex</l><block s="reportJoinWords"><list><block var="varIndex"/><block s="reportLetter"><block var="i"/><block var="varText"/></block></list></block></block><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>[</l><l>(</l><l>{</l></list></block><block s="reportLetter"><block var="i"/><block var="varText"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>1</l></block></script><list></list></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>]</l><l>)</l><l>}</l></list></block><block s="reportLetter"><block var="i"/><block var="varText"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>-1</l></block></script><list></list></block></script></block><block s="doIf"><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="varText"/></block><l>]</l></list></block><script><block s="doSetVar"><l>parent</l><block var="varbody"/></block><block s="doSetVar"><l>realIndex</l><block s="reportVariadicSum"><list><custom-block s="caculate %txt"><block var="varIndex"/></custom-block><l>1</l></list></block></block><block s="doSetVar"><l>varbody</l><block s="reportListItem"><block var="realIndex"/><block var="varbody"/></block></block></script><list></list></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="varText"/></block><l>[</l></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="varText"/></block></list></block></list></block><script><block s="doChangeVar"><l>i</l><l>1</l></block></script></block></script></block><block s="doReplaceInList"><block var="realIndex"/><block var="parent"/><block s="reportDifference"><block s="reportListItem"><block var="realIndex"/><block var="parent"/></block><block var="v"/></block></block></script><script><block s="doIfElse"><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><custom-block s="var %s"><block var="varName"/></custom-block></custom-block><l>dict</l></list></block><script><block s="doSetVar"><l>varbody</l><custom-block s="var %s"><block var="varName"/></custom-block></block><block s="doUntil"><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="varText"/></block></list></block><script><block s="doSetVar"><l>brackets</l><l>1</l></block><block s="doSetVar"><l>varIndex</l><l></l></block><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="varText"/></block><l>]</l></list></block><block s="reportVariadicEquals"><list><block var="brackets"/><l>0</l></list></block></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="varText"/></block></list></block></list></block><script><block s="doSetVar"><l>varIndex</l><block s="reportJoinWords"><list><block var="varIndex"/><block s="reportLetter"><block var="i"/><block var="varText"/></block></list></block></block><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>[</l><l>(</l><l>{</l></list></block><block s="reportLetter"><block var="i"/><block var="varText"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>1</l></block></script><list></list></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>]</l><l>)</l><l>}</l></list></block><block s="reportLetter"><block var="i"/><block var="varText"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>-1</l></block></script><list></list></block></script></block><block s="doIf"><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="varText"/></block><l>]</l></list></block><script><block s="doSetVar"><l>parent</l><block var="varbody"/></block><block s="doSetVar"><l>realIndex</l><custom-block s="caculate %txt"><block var="varIndex"/></custom-block></block><block s="doSetVar"><l>varbody</l><custom-block s="dict %l [ %txt ]"><block var="varbody"/><block var="realIndex"/></custom-block></block></script><list></list></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="varText"/></block><l>[</l></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="varText"/></block></list></block></list></block><script><block s="doChangeVar"><l>i</l><l>1</l></block></script></block></script></block><custom-block s="dict %l set key %txt value %s"><block var="parent"/><block var="realIndex"/><block s="reportDifference"><custom-block s="dict %l [ %txt ]"><block var="parent"/><block var="realIndex"/></custom-block><block var="v"/></block></custom-block></script><script><block s="doSetVar"><l>v</l><custom-block s="var %s"><block var="value"/></custom-block></block></script></block></script></block></script></block></script></block></script></block></script></block-definition><block-definition s="%&apos;x&apos; == %&apos;y&apos;" type="predicate" category="snapython"><header></header><code>&lt;#1&gt; == &lt;#2&gt;</code><translations></translations><inputs><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>value1</l><l>value2</l><l>input</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="x"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="x"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value1</l><block var="input"/></block></script><script><block s="doSetVar"><l>value1</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doSetVar"><l>input</l><block s="evaluate"><block var="y"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="y"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value2</l><block var="input"/></block></script><script><block s="doSetVar"><l>value2</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doReport"><block s="reportVariadicEquals"><list><block var="value1"/><block var="value2"/></list></block></block></script></block></script></block-definition><block-definition s="split %&apos;text&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>str</l><l>i</l><l>item</l><l>len</l><l>symble</l><l>brackets</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>str</l><custom-block s="%anyUE . %txt ( %mult%anyUE ）"><block var="text"/><l>strip</l><list><l></l></list></custom-block></block><block s="doIfElse"><block s="reportVariadicEquals"><list><block var="str"/><l></l></list></block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script><script><block s="doSetVar"><l>i</l><l>1</l></block><block s="doSetVar"><l>len</l><block s="reportTextAttribute"><l><option>length</option></l><block var="str"/></block></block><block s="doSetVar"><l>item</l><l></l></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="str"/></block><l>,</l></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block var="len"/></list></block></list></block><script><block s="doSetVar"><l>item</l><block s="reportJoinWords"><list><block var="item"/><block s="reportLetter"><block var="i"/><block var="str"/></block></list></block></block><block s="doIfElse"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="str"/></block><l>&apos;</l></list></block><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="str"/></block><l>"</l></list></block></list></block><script><block s="doSetVar"><l>symble</l><block s="reportLetter"><block var="i"/><block var="str"/></block></block><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="str"/></block><block var="symble"/></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="str"/></block></list></block></list></block><script><block s="doSetVar"><l>item</l><block s="reportJoinWords"><list><block var="item"/><block s="reportLetter"><block var="i"/><block var="str"/></block></list></block></block><block s="doChangeVar"><l>i</l><l>1</l></block></script></block><block s="doIf"><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="str"/></block><block var="symble"/></list></block><script><block s="doSetVar"><l>item</l><block s="reportJoinWords"><list><block var="item"/><block s="reportLetter"><block var="i"/><block var="str"/></block></list></block></block><block s="doChangeVar"><l>i</l><l>1</l></block></script><list></list></block></script><script><block s="doIfElse"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="str"/></block><l>(</l></list></block><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="str"/></block><l>[</l></list></block><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="str"/></block><l>{</l></list></block></list></block><script><block s="doSetVar"><l>brackets</l><l>1</l></block><block s="doIfElse"><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="str"/></block><l>[</l></list></block><script><block s="doSetVar"><l>symble</l><l>]</l></block></script><script><block s="doIfElse"><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="str"/></block><l>(</l></list></block><script><block s="doSetVar"><l>symble</l><l>)</l></block></script><script><block s="doSetVar"><l>symble</l><l>}</l></block></script></block></script></block><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="str"/></block><block var="symble"/></list></block><block s="reportVariadicEquals"><list><block var="brackets"/><l>0</l></list></block></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block s="reportTextAttribute"><l><option>length</option></l><block var="str"/></block></list></block></list></block><script><block s="doSetVar"><l>item</l><block s="reportJoinWords"><list><block var="item"/><block s="reportLetter"><block var="i"/><block var="str"/></block></list></block></block><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>[</l><l>(</l><l>{</l></list></block><block s="reportLetter"><block var="i"/><block var="text"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>1</l></block></script><list></list></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>]</l><l>)</l><l>}</l></list></block><block s="reportLetter"><block var="i"/><block var="text"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>-1</l></block></script><list></list></block></script></block><block s="doIf"><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="str"/></block><block var="symble"/></list></block><script><block s="doSetVar"><l>item</l><block s="reportJoinWords"><list><block var="item"/><block s="reportLetter"><block var="i"/><block var="str"/></block></list></block></block><block s="doChangeVar"><l>i</l><l>1</l></block></script><list></list></block></script><script><block s="doChangeVar"><l>i</l><l>1</l></block></script></block></script></block></script></block><block s="doIfElse"><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="str"/></block><l>,</l></list></block><block s="reportVariadicLessThan"><list><block var="i"/><block var="len"/></list></block></list></block><script><block s="doReport"><block s="reportCONS"><block var="item"/><custom-block s="split %txt"><block s="reportJoinWords"><block s="reportLetter"><block s="reportNumbers"><block s="reportVariadicSum"><list><block var="i"/><l>1</l></list></block><block var="len"/></block><block var="str"/></block></block></custom-block></block></block></script><script><block s="doReport"><block s="reportNewList"><list><block var="item"/></list></block></block></script></block></script></block></script></block></script></block-definition><block-definition s="%&apos;x&apos; != %&apos;y&apos;" type="predicate" category="snapython"><header></header><code>&lt;#1&gt; != &lt;#2&gt;</code><translations></translations><inputs><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>value1</l><l>value2</l><l>input</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="x"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="x"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value1</l><block var="input"/></block></script><script><block s="doSetVar"><l>value1</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doSetVar"><l>input</l><block s="evaluate"><block var="y"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="y"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value2</l><block var="input"/></block></script><script><block s="doSetVar"><l>value2</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doReport"><block s="reportVariadicNotEquals"><list><block var="value1"/><block var="value2"/></list></block></block></script></block></script></block-definition><block-definition s="%&apos;x&apos; &gt; %&apos;y&apos;" type="predicate" category="snapython"><header></header><code>&lt;#1&gt; &gt; &lt;#2&gt;</code><translations></translations><inputs><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>value1</l><l>value2</l><l>input</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="x"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="x"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value1</l><block var="input"/></block></script><script><block s="doSetVar"><l>value1</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doSetVar"><l>input</l><block s="evaluate"><block var="y"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="y"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value2</l><block var="input"/></block></script><script><block s="doSetVar"><l>value2</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doReport"><block s="reportVariadicGreaterThan"><list><block var="value1"/><block var="value2"/></list></block></block></script></block></script></block-definition><block-definition s="%&apos;x&apos; &lt; %&apos;y&apos;" type="predicate" category="snapython"><header></header><code>&lt;#1&gt; &lt; &lt;#2&gt;</code><translations></translations><inputs><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>value1</l><l>value2</l><l>input</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="x"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="x"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value1</l><block var="input"/></block></script><script><block s="doSetVar"><l>value1</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doSetVar"><l>input</l><block s="evaluate"><block var="y"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="y"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value2</l><block var="input"/></block></script><script><block s="doSetVar"><l>value2</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doReport"><block s="reportVariadicLessThan"><list><block var="value1"/><block var="value2"/></list></block></block></script></block></script></block-definition><block-definition s="%&apos;cond1&apos; and %&apos;cond2&apos;" type="predicate" category="snapython"><header></header><code>&lt;#1&gt; and &lt;#2&gt;</code><translations></translations><inputs><input type="%b"></input><input type="%b"></input></inputs><script><block s="doReport"><block s="reportVariadicAnd"><list><block var="cond1"/><block var="cond2"/></list></block></block></script></block-definition><block-definition s="%&apos;cond1&apos; or %&apos;cond2&apos;" type="predicate" category="snapython"><header></header><code></code><translations></translations><inputs><input type="%b"></input><input type="%b"></input></inputs><script><block s="doReport"><block s="reportVariadicOr"><list><block var="cond1"/><block var="cond2"/></list></block></block></script></block-definition><block-definition s="not %&apos;cond&apos;" type="predicate" category="snapython"><header></header><code>! &lt;#1&gt;</code><translations></translations><inputs><input type="%b"></input></inputs><script><block s="doReport"><block s="reportNot"><block var="cond"/></block></block></script></block-definition><block-definition s="print( %&apos;text&apos; )" type="command" category="snapython"><header></header><code>print(&lt;#1&gt;)</code><translations></translations><inputs><input type="%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>content</l><l>input</l><l>obj</l><l>x</l><l>items</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="text"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="text"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>obj</l><block var="input"/></block><block s="doSetVar"><l>content</l><custom-block s="toString %anyUE"><block var="obj"/></custom-block></block></script><script><block s="doSetVar"><l>items</l><custom-block s="split %txt"><block var="input"/></custom-block></block><block s="doSetVar"><l>content</l><custom-block s="toString %anyUE"><custom-block s="parse %txt"><block s="reportListItem"><l>1</l><block var="items"/></block></custom-block></custom-block></block><block s="doForEach"><l>项</l><block s="reportCDR"><block var="items"/></block><script><block s="doSetVar"><l>content</l><block s="reportJoinWords"><list><block var="content"/><l> </l><custom-block s="toString %anyUE"><custom-block s="parse %txt"><block var="项"/></custom-block></custom-block></list></block></block></script></block></script></block><block s="setHeading"><l>90</l></block><block s="doSetVar"><l>x</l><block s="xPosition"></block></block><block s="errorObsolete"></block><block s="up"></block><block s="setXPosition"><block var="x"/></block><block s="changeYPosition"><l>-25</l></block><block s="down"></block></script></block></script></block-definition><block-definition s="input( %&apos;text&apos; )" type="reporter" category="snapython"><header></header><code>input(&lt;#1&gt;)</code><translations></translations><inputs><input type="%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>content</l><l>x</l><l>input</l><l>prompt</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="text"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="text"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>content</l><block var="input"/></block></script><script><block s="doIfElse"><block s="reportIsA"><block var="input"/><l><option>text</option></l></block><script><block s="doSetVar"><l>content</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script><script><block s="doSetVar"><l>content</l><block var="input"/></block></script></block></script></block></script></block><block s="doSetVar"><l>prompt</l><block s="newClone"><l><option>myself</option></l></block></block><block s="doTellTo"><block var="prompt"/><block s="reifyScript"><script><block s="hide"></block><block s="doAsk"><block var="content"/></block><block s="removeClone"></block></script><list></list></block><list></list></block><block s="doReport"><block s="getLastAnswer"></block></block></script></block-definition><block-definition s="if %&apos;cond&apos; : %&apos;commands&apos;" type="command" category="snapython"><header></header><code></code><translations></translations><inputs><input type="%b"></input><input type="%cs"></input></inputs><script><block s="doIf"><block var="cond"/><script><block s="doRun"><block var="commands"/><list></list></block></script><list></list></block></script></block-definition><block-definition s="if %&apos;cond&apos; : %&apos;branch1&apos; else : %&apos;branch2&apos;" type="command" category="snapython"><header></header><code>if &lt;#1&gt; :&#xD;    &lt;#2&gt;&#xD;else :&#xD;    &lt;#3&gt;</code><translations></translations><inputs><input type="%b"></input><input type="%cs"></input><input type="%cs"></input></inputs><script><block s="doIfElse"><block var="cond"/><script><block s="doRun"><block var="branch1"/><list></list></block></script><script><block s="doRun"><block var="branch2"/><list></list></block></script></block></script></block-definition><block-definition s="if %&apos;cond1&apos; : %&apos;branch1&apos; elif %&apos;cond2&apos; : %&apos;branch2&apos; else : %&apos;branch3&apos;" type="command" category="snapython"><header></header><code>if &lt;#1&gt; :&#xD;    &lt;#2&gt;&#xD;elif &lt;#3&gt; :&#xD;    &lt;#4&gt;&#xD;else :&#xD;    &lt;#5&gt;</code><translations></translations><inputs><input type="%b"></input><input type="%cs"></input><input type="%b"></input><input type="%cs"></input><input type="%cs"></input></inputs><script><block s="doIfElse"><block var="cond1"/><script><block s="doRun"><block var="branch1"/><list></list></block></script><script><block s="doIfElse"><block var="cond2"/><script><block s="doRun"><block var="branch2"/><list></list></block></script><script><block s="doRun"><block var="branch3"/><list></list></block></script></block></script></block></script></block-definition><block-definition s="while %&apos;cond&apos; : %&apos;commands&apos;" type="command" category="snapython"><header></header><code>while &lt;#1&gt; :&#xD;    &lt;#2&gt;</code><translations></translations><inputs><input type="%boolUE"></input><input type="%cs"></input></inputs><script><block s="doUntil"><block s="reportNot"><block s="evaluate"><block var="cond"/><list></list></block></block><script><block s="doRun"><block var="commands"/><list></list></block></script></block></script></block-definition><block-definition s="global %&apos;vars&apos;" type="command" category="snapython"><header></header><code>global &lt;#1&gt;</code><translations></translations><inputs><input type="%mult%txt"></input></inputs><script><block s="doWarp"><script><block s="doForEach"><l>var</l><block var="vars"/><script><block s="doIf"><block s="reportNot"><custom-block s="does var %s exist?"><block var="var"/></custom-block></block><script><custom-block s="global variables %mult%txt"><list><block var="var"/></list></custom-block></script><list></list></block></script></block></script></block></script></block-definition><block-definition s="show var %&apos;_name&apos;" type="command" category="variables"><comment x="0" y="0" w="181" collapsed="false">This block turns on (show) the watcher view on stage (if it was not already activated) of the variable with the given name (slot input).&#xD;&#xD;It can only access to the closest variable scope (if there different variables with the same name in different scopes) following the order &apos;script&apos; -&gt; &apos;sprite&apos; -&gt; &apos;global&apos;.&#xD;&#xD;No errors if that variable does not exist.</comment><header></header><code></code><translations>ca:mostra la variable _&#xD;es:mostrar variable _&#xD;pt:mostra a variável _&#xD;de:zeige var _&#xD;</translations><inputs><input type="%s"><options>§_getVarNamesDict</options></input></inputs><script><block s="doApplyExtension"><l>var_show(name)</l><list><block var="_name"/></list></block></script></block-definition><block-definition s="hide var %&apos;_name&apos;" type="command" category="variables"><comment x="0" y="0" w="181" collapsed="false">This block turns off (hide) the watcher view on stage (if it was not already activated) of the variable with the given name (slot input).&#xD;&#xD;It can only access to the closest variable scope (if there different variables with the same name in different scopes) following the order &apos;script&apos; -&gt; &apos;sprite&apos; -&gt; &apos;global&apos;.&#xD;&#xD;No errors if that variable does not exist.</comment><header></header><code></code><translations>ca:amaga la variable _&#xD;es:esconder variable _&#xD;pt:esconde a variável _&#xD;de:verstecke var _&#xD;</translations><inputs><input type="%s"><options>§_getVarNamesDict</options></input></inputs><script><block s="doApplyExtension"><l>var_hide(name)</l><list><block var="_name"/></list></block></script></block-definition><block-definition s="random. %&apos;func&apos; ( %&apos;params&apos; )" type="reporter" category="snapython"><header></header><code>random.&lt;#1&gt;(&lt;#2&gt;)</code><translations></translations><inputs><input type="%txt">randint<options>random&#xD;randint&#xD;choice&#xD;uniform&#xD;shuffle</options></input><input type="%mult%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>v</l><l>input</l><l>values</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>values</l><block s="reportNewList"><list></list></block></block><block s="doForEach"><l>value</l><block var="params"/><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="value"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="value"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>v</l><block var="input"/></block></script><script><block s="doIfElse"><block s="reportIsA"><block var="input"/><l><option>text</option></l></block><script><block s="doSetVar"><l>v</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script><script><block s="doSetVar"><l>v</l><block var="input"/></block></script></block></script></block><block s="doAddToList"><block var="v"/><block var="values"/></block></script></block><block s="doIf"><custom-block s="%anyUE == %anyUE"><block var="func"/><l>"randint"</l></custom-block><script><block s="doReport"><block s="reportRandom"><block s="reportListItem"><l>1</l><block var="values"/></block><block s="reportListItem"><l>2</l><block var="values"/></block></block></block></script><list><custom-block s="%anyUE == %anyUE"><block var="func"/><l>"random"</l></custom-block><script><block s="doReport"><block s="reportRandom"><l>0.000000000001</l><l>1</l></block></block></script><custom-block s="%anyUE == %anyUE"><block var="func"/><l>"choice"</l></custom-block><script><block s="doIf"><custom-block s="%anyUE == %anyUE"><custom-block s="type( %anyUE )"><block s="reportListItem"><l>1</l><block var="values"/></block></custom-block><l>list</l></custom-block><script><block s="doReport"><block s="reportListItem"><l><option>random</option></l><block s="reportListItem"><l>1</l><block var="values"/></block></block></block></script><list><custom-block s="%anyUE == %anyUE"><custom-block s="type( %anyUE )"><block s="reportListItem"><l>1</l><block var="values"/></block></custom-block><l>dict</l></custom-block><script><block s="doReport"><block s="reportListItem"><l><option>random</option></l><block s="reportListItem"><l>2</l><block s="reportListItem"><l>1</l><block var="values"/></block></block></block></block></script><custom-block s="%anyUE == %anyUE"><custom-block s="type( %anyUE )"><block s="reportListItem"><l>1</l><block var="values"/></block></custom-block><l>tuple</l></custom-block><script><block s="doReport"><block s="reportListItem"><l><option>random</option></l><block s="reportListItem"><l>2</l><block s="reportListItem"><l>1</l><block var="values"/></block></block></block></block></script><custom-block s="%anyUE == %anyUE"><custom-block s="type( %anyUE )"><block s="reportListItem"><l>1</l><block var="values"/></block></custom-block><l>string</l></custom-block><script><block s="doReport"><block s="reportListItem"><l><option>random</option></l><block s="reportTextSplit"><block s="reportListItem"><l>1</l><block var="values"/></block><l><option>letter</option></l></block></block></block></script></list></block><block s="doReport"><l></l></block></script><custom-block s="%anyUE == %anyUE"><block var="func"/><l>"uniform"</l></custom-block><script><block s="doReport"><block s="reportRandom"><block s="reportVariadicSum"><list><block s="reportListItem"><l>1</l><block var="values"/></block><l>0.000000000001</l></list></block><block s="reportListItem"><l>2</l><block var="values"/></block></block></block></script></list></block><block s="doReport"><l></l></block></script></block></script></block-definition><block-definition s="type( %&apos;text&apos; )" type="reporter" category="snapython"><header></header><code>type(&lt;#1&gt;)</code><translations></translations><inputs><input type="%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>input</l><l>obj</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="text"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="text"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>obj</l><block var="input"/></block></script><script><block s="doSetVar"><l>obj</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doIfElse"><block s="reportIsA"><block var="obj"/><l><option>number</option></l></block><script><block s="doIfElse"><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportModulus"><block var="obj"/><l>1</l></block><l>0</l></list></block><block s="reportVariadicEquals"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="obj"/><l>.</l></block></block><l>1</l></list></block></list></block><script><block s="doReport"><l>int</l></block></script><script><block s="doReport"><l>float</l></block></script></block></script><script><block s="doIfElse"><block s="reportIsA"><block var="obj"/><l><option>text</option></l></block><script><block s="doReport"><l>str</l></block></script><script><block s="doIfElse"><block s="reportIsA"><block var="obj"/><l><option>Boolean</option></l></block><script><block s="doReport"><l>bool</l></block></script><script><block s="doIfElse"><block s="reportIsA"><block var="obj"/><l><option>sprite</option></l></block><script><block s="doReport"><l>sprite</l></block></script><script><block s="doIfElse"><block s="reportVariadicOr"><list><block s="reportIsA"><block var="obj"/><l><option>command</option></l></block><block s="reportIsA"><block var="obj"/><l><option>reporter</option></l></block><block s="reportIsA"><block var="obj"/><l><option>predicate</option></l></block></list></block><script><block s="doReport"><l>function</l></block></script><script><block s="doIfElse"><block s="reportIsA"><block var="obj"/><l><option>list</option></l></block><script><block s="doIfElse"><block s="reportVariadicEquals"><list><block s="reportListItem"><l>1</l><block var="obj"/></block><l>dict</l></list></block><script><block s="doReport"><l>dict</l></block></script><script><block s="doIfElse"><block s="reportVariadicEquals"><list><block s="reportListItem"><l>1</l><block var="obj"/></block><l>tuple</l></list></block><script><block s="doReport"><l>tuple</l></block></script><script><block s="doReport"><l>list</l></block></script></block></script></block></script><script><block s="doReport"><l>unknown</l></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block-definition><block-definition s="shuffle %&apos;list&apos;" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doDeclareVariables"><list><l>order</l><l>len</l><l>single</l><l>neworder</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>len</l><block s="reportListAttribute"><l><option>length</option></l><block var="list"/></block></block><block s="doSetVar"><l>order</l><block s="reportNumbers"><l>1</l><block var="len"/></block></block><block s="doSetVar"><l>neworder</l><block s="reportNewList"><list></list></block></block><block s="doForEach"><l>项</l><block var="order"/><script><block s="doInsertInList"><block var="项"/><l><option>random</option></l><block var="neworder"/></block></script></block><block s="doReport"><block s="reportListItem"><block var="neworder"/><block var="list"/></block></block></script></block></script></block-definition><block-definition s="slice %&apos;list&apos; %&apos;index&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>indices</l><l>top</l><l>bottom</l><l>len</l><l>begin</l><l>end</l><l>step</l><l>result</l><l>buffer</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>indices</l><block s="reportMap"><block s="reifyReporter"><autolambda><custom-block s="caculate %txt"><l></l></custom-block></autolambda><list></list></block><block s="reportTextSplit"><block var="index"/><l>:</l></block></block></block><block s="doSetVar"><l>len</l><block s="reportListAttribute"><l><option>length</option></l><block var="list"/></block></block><block s="doIfElse"><block s="reportVariadicEquals"><list><block s="reportListAttribute"><l><option>length</option></l><block var="indices"/></block><l>1</l></list></block><script><block s="doIf"><block s="reportIsA"><block s="reportListItem"><l>1</l><block var="indices"/></block><l><option>number</option></l></block><script><block s="doReport"><block s="reportListItem"><block s="reportVariadicSum"><list><block s="reportListItem"><l>1</l><block var="indices"/></block><l>1</l></list></block><block var="list"/></block></block></script><list></list></block></script><script><block s="doIfElse"><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportListItem"><l>1</l><block var="indices"/></block><l></l></list></block><block s="reportIsA"><block s="reportListItem"><l>2</l><block var="indices"/></block><l><option>number</option></l></block></list></block><script><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListItem"><l>2</l><block var="indices"/></block><l>0</l></list></block><script><block s="doSetVar"><l>top</l><block s="reportIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListItem"><l>2</l><block var="indices"/></block><block var="len"/></list></block><block var="len"/><block s="reportListItem"><l>2</l><block var="indices"/></block></block></block><block s="doIfElse"><block s="reportVariadicEquals"><list><block s="reportListItem"><l>3</l><block var="indices"/></block><l></l></list></block><script><block s="doReport"><block s="reportListItem"><block s="reportNumbers"><l>1</l><block var="top"/></block><block var="list"/></block></block></script><script><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListItem"><l>3</l><block var="indices"/></block><l>0</l></list></block><script><block s="doSetVar"><l>begin</l><l>1</l></block><block s="doSetVar"><l>end</l><block var="top"/></block><block s="doSetVar"><l>step</l><block s="reportListItem"><l>3</l><block var="indices"/></block></block></script><script><block s="doSetVar"><l>begin</l><block var="len"/></block><block s="doSetVar"><l>end</l><block s="reportVariadicSum"><list><block var="top"/><l>2</l></list></block></block><block s="doSetVar"><l>step</l><block s="reportListItem"><l>3</l><block var="indices"/></block></block></script></block></script></block></script><script><block s="doIfElse"><block s="reportVariadicLessThan"><list><block s="reportListItem"><l>2</l><block var="indices"/></block><l>0</l></list></block><script><block s="doSetVar"><l>top</l><block s="reportVariadicSum"><list><block var="len"/><block s="reportListItem"><l>2</l><block var="indices"/></block></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block var="top"/><l>0</l></list></block><script><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListItem"><l>3</l><block var="indices"/></block><l>0</l></list></block><script><block s="doSetVar"><l>begin</l><l>1</l></block><block s="doSetVar"><l>end</l><block var="top"/></block><block s="doSetVar"><l>step</l><block s="reportListItem"><l>3</l><block var="indices"/></block></block></script><script><block s="doSetVar"><l>begin</l><block var="len"/></block><block s="doSetVar"><l>end</l><block s="reportVariadicSum"><list><block var="top"/><l>2</l></list></block></block><block s="doSetVar"><l>step</l><block s="reportListItem"><l>3</l><block var="indices"/></block></block></script></block></script><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block></script><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block></script></block></script><script><block s="doIfElse"><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportListItem"><l>2</l><block var="indices"/></block><l></l></list></block><block s="reportIsA"><block s="reportListItem"><l>1</l><block var="indices"/></block><l><option>number</option></l></block></list></block><script><block s="doIfElse"><block s="reportVariadicEquals"><list><block s="reportListItem"><l>3</l><block var="indices"/></block><l></l></list></block><script><block s="doSetVar"><l>bottom</l><block s="reportIfElse"><block s="reportVariadicLessThan"><list><block s="reportListItem"><l>1</l><block var="indices"/></block><l>0</l></list></block><block s="reportVariadicSum"><list><block var="len"/><block s="reportListItem"><l>1</l><block var="indices"/></block></list></block><block s="reportListItem"><l>1</l><block var="indices"/></block></block></block><block s="doIf"><block s="reportVariadicLessThan"><list><block var="bottom"/><l>0</l></list></block><script><block s="doSetVar"><l>bottom</l><l>0</l></block></script><list></list></block><block s="doIfElse"><block s="reportVariadicLessThan"><list><block var="bottom"/><block var="len"/></list></block><script><block s="doReport"><block s="reportListItem"><block s="reportNumbers"><block s="reportVariadicSum"><list><block var="bottom"/><l>1</l></list></block><block var="len"/></block><block var="list"/></block></block></script><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block></script><script><block s="doIfElse"><block s="reportVariadicGreaterThanOrEquals"><list><block s="reportListItem"><l>1</l><block var="indices"/></block><l>0</l></list></block><script><block s="doIfElse"><block s="reportVariadicLessThan"><list><block s="reportListItem"><l>1</l><block var="indices"/></block><block var="len"/></list></block><script><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListItem"><l>3</l><block var="indices"/></block><l>0</l></list></block><script><block s="doSetVar"><l>begin</l><block s="reportVariadicSum"><list><block s="reportListItem"><l>1</l><block var="indices"/></block><l>1</l></list></block></block><block s="doSetVar"><l>end</l><block var="len"/></block><block s="doSetVar"><l>step</l><block s="reportListItem"><l>3</l><block var="indices"/></block></block></script><script><block s="doSetVar"><l>begin</l><block s="reportVariadicSum"><list><block s="reportListItem"><l>1</l><block var="indices"/></block><l>1</l></list></block></block><block s="doSetVar"><l>end</l><l>1</l></block><block s="doSetVar"><l>step</l><block s="reportListItem"><l>3</l><block var="indices"/></block></block></script></block></script><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block></script><script><block s="doSetVar"><l>bottom</l><block s="reportIfElse"><block s="reportVariadicGreaterThanOrEquals"><list><block s="reportVariadicSum"><list><block s="reportListItem"><l>1</l><block var="indices"/></block><block var="len"/></list></block><l>0</l></list></block><block s="reportVariadicSum"><list><block s="reportListItem"><l>1</l><block var="indices"/></block><block var="len"/></list></block><l>0</l></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListItem"><l>3</l><block var="indices"/></block><l>0</l></list></block><script><block s="doSetVar"><l>begin</l><block s="reportVariadicSum"><list><block var="bottom"/><l>1</l></list></block></block><block s="doSetVar"><l>end</l><block var="len"/></block><block s="doSetVar"><l>step</l><block s="reportListItem"><l>3</l><block var="indices"/></block></block></script><script><block s="doSetVar"><l>begin</l><block s="reportVariadicSum"><list><block var="bottom"/><l>1</l></list></block></block><block s="doSetVar"><l>end</l><l>1</l></block><block s="doSetVar"><l>step</l><block s="reportListItem"><l>3</l><block var="indices"/></block></block></script></block></script></block></script></block></script><script><block s="doIfElse"><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportListItem"><l>1</l><block var="indices"/></block><l></l></list></block><block s="reportVariadicEquals"><list><block s="reportListItem"><l>2</l><block var="indices"/></block><l></l></list></block></list></block><script><block s="doIfElse"><block s="reportVariadicEquals"><list><block s="reportListItem"><l>3</l><block var="indices"/></block><l></l></list></block><script><block s="doReport"><block s="reportMap"><block s="reifyReporter"><script></script><list></list></block><block var="list"/></block></block></script><script><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListItem"><l>3</l><block var="indices"/></block><l>0</l></list></block><script><block s="doSetVar"><l>begin</l><l>1</l></block><block s="doSetVar"><l>end</l><block var="len"/></block><block s="doSetVar"><l>step</l><block s="reportListItem"><l>3</l><block var="indices"/></block></block></script><script><block s="doSetVar"><l>begin</l><block var="len"/></block><block s="doSetVar"><l>end</l><l>1</l></block><block s="doSetVar"><l>step</l><block s="reportListItem"><l>3</l><block var="indices"/></block></block></script></block></script></block></script><script><block s="doIf"><block s="reportVariadicAnd"><list><block s="reportIsA"><block s="reportListItem"><l>1</l><block var="indices"/></block><l><option>number</option></l></block><block s="reportIsA"><block s="reportListItem"><l>2</l><block var="indices"/></block><l><option>number</option></l></block></list></block><script><block s="doIf"><block s="reportVariadicAnd"><list><block s="reportVariadicGreaterThanOrEquals"><list><block s="reportListItem"><l>1</l><block var="indices"/></block><l>0</l></list></block><block s="reportVariadicGreaterThanOrEquals"><list><block s="reportListItem"><l>2</l><block var="indices"/></block><l>0</l></list></block><block s="reportVariadicGreaterThan"><list><block s="reportListItem"><l>2</l><block var="indices"/></block><block s="reportListItem"><l>1</l><block var="indices"/></block></list></block><block s="reportVariadicLessThan"><list><block s="reportListItem"><l>1</l><block var="indices"/></block><block var="len"/></list></block></list></block><script><block s="doSetVar"><l>end</l><block s="reportIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListItem"><l>2</l><block var="indices"/></block><block var="len"/></list></block><block var="len"/><block s="reportListItem"><l>2</l><block var="indices"/></block></block></block></script><list></list></block><block s="doSetVar"><l>begin</l><block s="reportVariadicSum"><list><block s="reportListItem"><l>1</l><block var="indices"/></block><l>1</l></list></block></block><block s="doIfElse"><block s="reportVariadicEquals"><list><block s="reportListItem"><l>3</l><block var="indices"/></block><l></l></list></block><script><block s="doReport"><block s="reportListItem"><block s="reportNumbers"><block var="begin"/><block var="end"/></block><block var="list"/></block></block></script><script><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListItem"><l>3</l><block var="indices"/></block><l>0</l></list></block><script><block s="doSetVar"><l>step</l><block s="reportListItem"><l>3</l><block var="indices"/></block></block></script><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block></script></block></script><list></list></block></script></block></script></block></script></block><block s="doSetVar"><l>result</l><block s="reportNewList"><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block var="step"/><l>0</l></list></block><script><block s="doUntil"><block s="reportVariadicGreaterThan"><list><block var="begin"/><block var="end"/></list></block><script><block s="doAddToList"><block s="reportListItem"><block var="begin"/><block var="list"/></block><block var="result"/></block><block s="doChangeVar"><l>begin</l><block var="step"/></block></script></block></script><script><block s="doUntil"><block s="reportVariadicLessThan"><list><block var="begin"/><block var="end"/></list></block><script><block s="doAddToList"><block s="reportListItem"><block var="begin"/><block var="list"/></block><block var="result"/></block><block s="doChangeVar"><l>begin</l><block var="step"/></block></script></block></script></block><block s="doReport"><block var="result"/></block></script></block><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block></script></block-definition><block-definition s="len ( %&apos;var&apos; )" type="reporter" category="snapython"><header></header><code>len(&lt;#1&gt;)</code><translations></translations><inputs><input type="%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>input</l><l>v</l></list></block><block s="doSetVar"><l>input</l><block s="evaluate"><block var="var"/><list></list></block></block><block s="doWarp"><script><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="var"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>v</l><block var="input"/></block></script><script><block s="doIfElse"><block s="reportIsA"><block var="input"/><l><option>text</option></l></block><script><block s="doSetVar"><l>v</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script><script><block s="doSetVar"><l>v</l><block var="input"/></block></script></block></script></block><block s="doIfElse"><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><block var="v"/></custom-block><l>str</l></list></block><script><block s="doReport"><block s="reportTextAttribute"><l><option>length</option></l><block var="v"/></block></block></script><script><block s="doIfElse"><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><block var="v"/></custom-block><l>list</l></list></block><script><block s="doReport"><block s="reportListAttribute"><l><option>length</option></l><block var="v"/></block></block></script><script><block s="doIfElse"><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><block var="v"/></custom-block><l>dict</l></list></block><script><block s="doReport"><block s="reportListAttribute"><l><option>length</option></l><block s="reportListItem"><l>2</l><block var="v"/></block></block></block></script><script><block s="doIfElse"><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><block var="v"/></custom-block><l>tuple</l></list></block><script><block s="doReport"><block s="reportListAttribute"><l><option>length</option></l><block s="reportListItem"><l>2</l><block var="v"/></block></block></block></script><script><block s="doReport"><l>1</l></block></script></block></script></block></script></block></script></block></script></block></script></block-definition><block-definition s="range ( %&apos;params&apos; )" type="reporter" category="snapython"><header></header><code>range(&lt;#1&gt;)</code><translations></translations><inputs><input type="%mult%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>count</l><l>iterration</l><l>range</l><l>v</l><l>input</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>range</l><block s="reportNewList"><list></list></block></block><block s="doForEach"><l>value</l><block var="params"/><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="value"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="value"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>v</l><block var="input"/></block></script><script><block s="doIfElse"><block s="reportIsA"><block var="input"/><l><option>text</option></l></block><script><block s="doSetVar"><l>v</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script><script><block s="doSetVar"><l>v</l><block var="input"/></block></script></block></script></block><block s="doAddToList"><block var="v"/><block var="range"/></block></script></block><block s="doSetVar"><l>count</l><block s="reportListAttribute"><l><option>length</option></l><block var="range"/></block></block><block s="doIf"><block s="reportVariadicGreaterThan"><list><block var="count"/><l>0</l></list></block><script><block s="doIfElse"><block s="reportVariadicEquals"><list><block var="count"/><l>1</l></list></block><script><block s="doSetVar"><l>iterration</l><block s="evaluate"><block s="reifyReporter"><autolambda><custom-block s="迭代器 初值 %n 终值 %n 步距 %n"><l>0</l><block s="reportListItem"><l>1</l><block var="range"/></block><l>1</l></custom-block></autolambda><list></list></block><list></list></block></block></script><script><block s="doIfElse"><block s="reportVariadicEquals"><list><block var="count"/><l>2</l></list></block><script><block s="doSetVar"><l>iterration</l><block s="evaluate"><block s="reifyReporter"><autolambda><custom-block s="迭代器 初值 %n 终值 %n 步距 %n"><block s="reportListItem"><l>1</l><block var="range"/></block><block s="reportListItem"><l>2</l><block var="range"/></block><l>1</l></custom-block></autolambda><list></list></block><list></list></block></block></script><script><block s="doSetVar"><l>iterration</l><block s="evaluate"><block s="reifyReporter"><autolambda><custom-block s="迭代器 初值 %n 终值 %n 步距 %n"><block s="reportListItem"><l>1</l><block var="range"/></block><block s="reportListItem"><l>2</l><block var="range"/></block><block s="reportListItem"><l>3</l><block var="range"/></block></custom-block></autolambda><list></list></block><list></list></block></block></script></block></script></block><block s="doReport"><block var="iterration"/></block></script><list></list></block><block s="doReport"><l></l></block></script></block></script></block-definition><block-definition s="for %&apos;v&apos; in %&apos;range&apos; : %&apos;script&apos;" type="command" category="snapython"><header></header><code>for &lt;#1&gt; in &lt;#2&gt; :&#xD;    &lt;#3&gt;</code><translations></translations><inputs><input type="%txt">i</input><input type="%anyUE"></input><input type="%cs"></input></inputs><script><block s="doDeclareVariables"><list><l>iterration</l><l>temp</l><l>var</l><l>input</l><l>obj</l></list></block><block s="doSetVar"><l>input</l><block s="evaluate"><block var="range"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="range"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>obj</l><block var="input"/></block></script><script><block s="doSetVar"><l>obj</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><custom-block s="create %s var %mult%txt"><l>script</l><list><block var="v"/></list></custom-block><block s="doIfElse"><block s="reportVariadicEquals"><list><block s="reportListItem"><l>1</l><block s="reportTextSplit"><block var="range"/><l><option>blocks</option></l></block></block><block s="reifyReporter"><autolambda><custom-block s="range ( %mult%anyUE )"><list><l></l></list></custom-block></autolambda><list></list></block></list></block><script><block s="doSetVar"><l>iterration</l><block var="obj"/></block><block s="doSetVar"><l>temp</l><block s="evaluate"><block var="obj"/><list><l>next</l></list></block></block><block s="doUntil"><block s="reportVariadicEquals"><list><block var="temp"/><l>nil</l></list></block><script><custom-block s="set var %s to %s"><block var="v"/><block var="temp"/></custom-block><block s="doRun"><block var="script"/><list></list></block><block s="doSetVar"><l>temp</l><block s="evaluate"><block var="obj"/><list><l>next</l></list></block></block></script></block></script><script><block s="doSetVar"><l>var</l><block var="obj"/></block><block s="doIfElse"><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><block var="var"/></custom-block><l>list</l></list></block><script><block s="doForEach"><l>项</l><block var="var"/><script><custom-block s="set var %s to %s"><block var="v"/><block var="项"/></custom-block><block s="doRun"><block var="script"/><list></list></block></script></block></script><script><block s="doIfElse"><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><block var="var"/></custom-block><l>dict</l></list></block><script><block s="doForEach"><l>项</l><block s="reportListItem"><l>1</l><block s="reportListAttribute"><l><option>columns</option></l><block s="reportListItem"><l>2</l><block var="var"/></block></block></block><script><custom-block s="set var %s to %s"><block var="v"/><block var="项"/></custom-block><block s="doRun"><block var="script"/><list></list></block></script></block></script><script><block s="doIf"><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><block var="var"/></custom-block><l>tuple</l></list></block><script><block s="doForEach"><l>项</l><block s="reportListItem"><l>2</l><block var="var"/></block><script><custom-block s="set var %s to %s"><block var="v"/><block var="项"/></custom-block><block s="doRun"><block var="script"/><list></list></block></script></block></script><list></list></block></script></block></script></block></script></block></script></block-definition><block-definition s="%&apos;var&apos; . %&apos;method&apos; ( %&apos;params&apos; )" type="command" category="snapython"><header></header><code>&lt;#1&gt;.&lt;#2&gt;(&lt;#3&gt;)</code><translations></translations><inputs><input type="%anyUE"></input><input type="%txt">append<options>append&#xD;extend&#xD;pop&#xD;insert&#xD;clear&#xD;sort</options></input><input type="%mult%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>v</l><l>input</l><l>values</l><l>list</l><l>order</l><l>pairs</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>values</l><block s="reportNewList"><list></list></block></block><block s="doForEach"><l>value</l><block var="params"/><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="value"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="value"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>v</l><block var="input"/></block></script><script><block s="doIfElse"><block s="reportIsA"><block var="input"/><l><option>text</option></l></block><script><block s="doSetVar"><l>v</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script><script><block s="doSetVar"><l>v</l><block var="input"/></block></script></block></script></block><block s="doAddToList"><block var="v"/><block var="values"/></block></script></block><block s="doIf"><block s="reportVariadicEquals"><list><block var="method"/><l>insert</l></list></block><script><block s="doDeclareVariables"><list><l>index</l><l>data</l><l>len</l><l>former</l><l>latter</l><l>originList</l><l>singleData</l></list></block><block s="doSetVar"><l>index</l><block s="reportListItem"><l>1</l><block var="values"/></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="var"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>originList</l><block s="evaluate"><block var="var"/><list></list></block></block></script><script><block s="doSetVar"><l>originList</l><custom-block s="var %s"><block s="evaluate"><block var="var"/><list></list></block></custom-block></block></script></block><block s="doChangeVar"><l>len</l><block s="reportListAttribute"><l><option>length</option></l><block var="originList"/></block></block><block s="doIf"><block s="reportVariadicLessThan"><list><block var="index"/><l>0</l></list></block><script><block s="doSetVar"><l>index</l><block s="reportVariadicSum"><list><block var="len"/><block var="index"/></list></block></block></script><list></list></block><block s="doChangeVar"><l>index</l><l>1</l></block><block s="doSetVar"><l>singleData</l><l></l></block><block s="doSetVar"><l>data</l><block s="reportCDR"><block var="values"/></block></block><block s="doIf"><block s="reportVariadicEquals"><list><block s="reportListAttribute"><l><option>length</option></l><block var="data"/></block><l>1</l></list></block><script><block s="doSetVar"><l>singleData</l><block s="reportListItem"><l>1</l><block var="data"/></block></block></script><list></list></block><block s="doIfElse"><block s="reportVariadicNotEquals"><list><block var="singleData"/><l></l></list></block><script><block s="doInsertInList"><block var="singleData"/><block var="index"/><block var="originList"/></block></script><script><block s="doIfElse"><block s="reportVariadicLessThanOrEquals"><list><block var="index"/><l>1</l></list></block><script><block s="doSetVar"><l>former</l><block s="reportNewList"><list></list></block></block><block s="doSetVar"><l>latter</l><block var="originList"/></block></script><script><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block var="index"/><block var="len"/></list></block><script><block s="doSetVar"><l>former</l><block var="originList"/></block><block s="doSetVar"><l>latter</l><block s="reportNewList"><list></list></block></block></script><script><block s="doSetVar"><l>former</l><block s="reportListItem"><block s="reportNumbers"><l>1</l><block s="reportDifference"><block var="index"/><l>1</l></block></block><block var="originList"/></block></block><block s="doSetVar"><l>latter</l><block s="reportListItem"><block s="reportNumbers"><block var="index"/><block var="len"/></block><block var="originList"/></block></block></script></block></script></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="var"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doRun"><block s="reifyScript"><script><block s="doSetVar"><l></l><l></l></block></script><list></list></block><list><block var="var"/><block s="reportConcatenatedLists"><list><block var="former"/><block var="data"/><block var="latter"/></list></block></list></block></script><script><custom-block s="set var %s to %s"><block s="evaluate"><block var="var"/><list></list></block><block s="reportConcatenatedLists"><list><block var="former"/><block var="data"/><block var="latter"/></list></block></custom-block></script></block></script></block></script><list><block s="reportVariadicEquals"><list><block var="method"/><l>append</l></list></block><script><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="var"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doRun"><block s="reifyScript"><script><block s="doSetVar"><l></l><l></l></block></script><list></list></block><list><block var="var"/><block s="reportConcatenatedLists"><list><block s="evaluate"><block var="var"/><list></list></block><block var="values"/></list></block></list></block></script><script><custom-block s="set var %s to %s"><block s="evaluate"><block var="var"/><list></list></block><block s="reportConcatenatedLists"><list><custom-block s="var %s"><block s="evaluate"><block var="var"/><list></list></block></custom-block><block var="values"/></list></block></custom-block></script></block></script><block s="reportVariadicEquals"><list><block var="method"/><l>pop</l></list></block><script><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="var"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doIfElse"><block s="reportListIsEmpty"><block var="values"/></block><script><block s="doRun"><block s="reifyScript"><script><block s="doDeleteFromList"><l><option>last</option></l><l/></block></script><list></list></block><list><block var="var"/></list></block></script><script><block s="doRun"><block s="reifyScript"><script><block s="doDeleteFromList"><l></l><l/></block></script><list></list></block><list><block s="reportVariadicSum"><list><block s="reportListItem"><l>1</l><block var="values"/></block><l>1</l></list></block><block var="var"/></list></block></script></block></script><script><block s="doDeclareVariables"><list><l>result</l></list></block><block s="doSetVar"><l>result</l><custom-block s="var %s"><block s="evaluate"><block var="var"/><list></list></block></custom-block></block><block s="doIfElse"><block s="reportListIsEmpty"><block var="values"/></block><script><block s="doDeleteFromList"><l><option>last</option></l><block var="result"/></block></script><script><block s="doDeleteFromList"><block s="reportVariadicSum"><list><block s="reportListItem"><l>1</l><block var="values"/></block><l>1</l></list></block><block var="result"/></block></script></block></script></block></script><block s="reportVariadicEquals"><list><block var="method"/><l>sort</l></list></block><script><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="var"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>list</l><block s="evaluate"><block var="var"/><list></list></block></block></script><script><block s="doSetVar"><l>list</l><custom-block s="var %s"><block s="evaluate"><block var="var"/><list></list></block></custom-block></block></script></block><block s="doIfElse"><block s="reportListIsEmpty"><block var="values"/></block><script><block s="doSetVar"><l>order</l><block s="reifyPredicate"><autolambda><block s="reportVariadicLessThan"><list><l></l><l></l></list></block></autolambda><list></list></block></block></script><script><block s="doSetVar"><l>pairs</l><block s="reportTextSplit"><block s="reportListItem"><l>1</l><block var="values"/></block><l>=</l></block></block><block s="doIfElse"><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportListItem"><l>1</l><block var="pairs"/></block><l>reverse</l></list></block><block s="reportVariadicEquals"><list><block s="reportListItem"><l>2</l><block var="pairs"/></block><l>True</l></list></block></list></block><script><block s="doSetVar"><l>order</l><block s="reifyPredicate"><autolambda><block s="reportVariadicGreaterThan"><list><l></l><l></l></list></block></autolambda><list></list></block></block></script><script><block s="doSetVar"><l>order</l><block s="reifyPredicate"><autolambda><block s="reportVariadicLessThan"><list><l></l><l></l></list></block></autolambda><list></list></block></block></script></block></script></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="var"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doRun"><block s="reifyScript"><script><block s="doSetVar"><l></l><l></l></block></script><list></list></block><list><block var="var"/><custom-block s="$flash sort %l ordering with %predRing"><block var="list"/><block var="order"/></custom-block></list></block></script><script><block s="doRun"><block s="reifyScript"><script><block s="doSetVar"><l></l><l></l></block></script><list></list></block><list><block s="evaluate"><block var="var"/><list></list></block><custom-block s="$flash sort %l ordering with %predRing"><block var="list"/><block var="order"/></custom-block></list></block></script></block></script><block s="reportVariadicEquals"><list><block var="method"/><l>clear</l></list></block><script><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="var"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doRun"><block s="reifyScript"><script><block s="doSetVar"><l></l><block s="reportNewList"><list></list></block></block></script><list></list></block><list><block var="var"/></list></block></script><script><block s="doRun"><block s="reifyScript"><script><block s="doSetVar"><l></l><block s="reportNewList"><list></list></block></block></script><list></list></block><list><block s="evaluate"><block var="var"/><list></list></block></list></block></script></block></script><block s="reportVariadicEquals"><list><block var="method"/><l>extend</l></list></block><script><block s="doIfElse"><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportListAttribute"><l><option>length</option></l><block var="values"/></block><l>1</l></list></block><block s="reportIsA"><block s="reportListItem"><l>1</l><block var="values"/></block><l><option>list</option></l></block></list></block><script><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="var"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doRun"><block s="reifyScript"><script><block s="doSetVar"><l></l><l></l></block></script><list></list></block><list><block var="var"/><block s="reportConcatenatedLists"><list><block s="evaluate"><block var="var"/><list></list></block><block s="reportListItem"><l>1</l><block var="values"/></block></list></block></list></block></script><script><custom-block s="set var %s to %s"><block s="evaluate"><block var="var"/><list></list></block><block s="reportConcatenatedLists"><list><custom-block s="var %s"><block s="evaluate"><block var="var"/><list></list></block></custom-block><block s="reportListItem"><l>1</l><block var="values"/></block></list></block></custom-block></script></block></script><script><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="var"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doRun"><block s="reifyScript"><script><block s="doSetVar"><l></l><l></l></block></script><list></list></block><list><block var="var"/><block s="reportConcatenatedLists"><list><block s="evaluate"><block var="var"/><list></list></block><block var="values"/></list></block></list></block></script><script><custom-block s="set var %s to %s"><block s="evaluate"><block var="var"/><list></list></block><block s="reportConcatenatedLists"><list><custom-block s="var %s"><block s="evaluate"><block var="var"/><list></list></block></custom-block><block var="values"/></list></block></custom-block></script></block></script></block></script></list></block></script></block></script></block-definition><block-definition s="%&apos;var&apos; . %&apos;method&apos; ( %&apos;params&apos; ）" type="reporter" category="snapython"><header></header><code>&lt;#1&gt;.&lt;#2&gt;(&lt;#3&gt;)</code><translations></translations><inputs><input type="%anyUE"></input><input type="%txt">strip<options>strip&#xD;lstrip&#xD;pop&#xD;rstip&#xD;split&#xD;values</options></input><input type="%mult%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>strlist</l><l>input</l><l>str</l><l>values</l><l>v</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>values</l><block s="reportNewList"><list></list></block></block><block s="doForEach"><l>value</l><block var="params"/><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="value"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="value"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>v</l><block var="input"/></block></script><script><block s="doIfElse"><block s="reportIsA"><block var="input"/><l><option>text</option></l></block><script><block s="doSetVar"><l>v</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script><script><block s="doSetVar"><l>v</l><block var="input"/></block></script></block></script></block><block s="doAddToList"><block var="v"/><block var="values"/></block></script></block><block s="doSetVar"><l>input</l><block s="evaluate"><block var="var"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="var"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>str</l><block var="input"/></block></script><script><block s="doIfElse"><block s="reportIsA"><block var="input"/><l><option>text</option></l></block><script><block s="doSetVar"><l>str</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script><script><block s="doSetVar"><l>str</l><block var="input"/></block></script></block></script></block><block s="doIf"><block s="reportVariadicOr"><list><block s="reportIsA"><block var="str"/><l><option>text</option></l></block><block s="reportIsA"><block var="str"/><l><option>number</option></l></block></list></block><script><block s="doIfElse"><block s="reportListContainsItem"><block s="reportNewList"><list><l>lstrip</l><l>strip</l><l>rstrip</l></list></block><block var="method"/></block><script><block s="doSetVar"><l>strlist</l><block s="reportTextSplit"><block var="str"/><l><option>letter</option></l></block></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>lstrip</l><l>strip</l></list></block><block var="method"/></block><script><block s="doUntil"><block s="reportVariadicNotEquals"><list><block s="reportListItem"><l>1</l><block var="strlist"/></block><l> </l></list></block><script><block s="doDeleteFromList"><l>1</l><block var="strlist"/></block></script></block></script><list></list></block><block s="doIf"><block s="reportVariadicEquals"><list><block var="method"/><l>lstrip</l></list></block><script><block s="doReport"><block s="reportJoinWords"><block var="strlist"/></block></block></script><list></list></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>rstrip</l><l>strip</l></list></block><block var="method"/></block><script><block s="doUntil"><block s="reportVariadicNotEquals"><list><block s="reportListItem"><l><option>last</option></l><block var="strlist"/></block><l> </l></list></block><script><block s="doDeleteFromList"><l><option>last</option></l><block var="strlist"/></block></script></block></script><list></list></block><block s="doReport"><block s="reportJoinWords"><block var="strlist"/></block></block></script><script><block s="doIf"><block s="reportVariadicEquals"><list><block var="method"/><l>split</l></list></block><script><block s="doReport"><block s="reportTextSplit"><block var="str"/><block s="reportListItem"><l>1</l><block var="values"/></block></block></block></script><list></list></block></script></block></script><list><custom-block s="%anyUE == %anyUE"><custom-block s="type( %anyUE )"><block var="str"/></custom-block><l>dict</l></custom-block><script><block s="doIf"><block s="reportVariadicEquals"><list><block var="method"/><l>values</l></list></block><script><block s="doReport"><block s="reportListItem"><l>2</l><block s="reportListAttribute"><l><option>columns</option></l><block s="reportListItem"><l>2</l><block var="str"/></block></block></block></block></script><list><block s="reportVariadicEquals"><list><block var="method"/><l>pop</l></list></block><script><custom-block s="dict %l delete key %txt"><block var="str"/><block s="reportListItem"><l>1</l><block var="values"/></block></custom-block><block s="doReport"><block var="str"/></block></script></list></block></script></list></block><block s="doReport"><l></l></block></script></block></script></block-definition><block-definition s="position" type="reporter" category="motion"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="xPosition"></block><block s="yPosition"></block></list></block></block></script></block-definition><block-definition s="json. %&apos;method&apos; ( %&apos;var&apos; )" type="reporter" category="snapython"><header></header><code>json.&lt;#1&gt;(&lt;#2&gt;)</code><translations></translations><inputs><input type="%txt">dumps<options>dumps&#xD;loads</options></input><input type="%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>input</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="var"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicEquals"><list><block var="method"/><l>dumps</l></list></block><script><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="var"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doReport"><custom-block s="toString %anyUE"><block var="input"/></custom-block></block></script><script><block s="doReport"><custom-block s="toString %anyUE"><custom-block s="parse %txt"><block var="input"/></custom-block></custom-block></block></script></block></script><script><block s="doIf"><block s="reportVariadicEquals"><list><block var="method"/><l>loads</l></list></block><script><block s="doReport"><custom-block s="parse %txt"><block var="input"/></custom-block></block></script><list></list></block></script></block></script></block></script></block-definition><block-definition s="%&apos;object&apos; . %&apos;event&apos; ( %&apos;func&apos; )" type="command" category="snapython"><header></header><code></code><translations></translations><inputs><input type="%s">turtle</input><input type="%txt">onclick<options>onclick</options></input><input type="%cmdRing"></input></inputs><script><block s="doDeclareVariables"><list><l>target</l></list></block><block s="doIfElse"><block s="reportIsA"><block var="object"/><l><option>sprite</option></l></block><script><block s="doSetVar"><l>target</l><block var="object"/></block></script><script><block s="doIf"><block s="reportIsA"><block var="object"/><l><option>text</option></l></block><script><block s="doIfElse"><block s="reportIsA"><block s="reportObject"><block var="object"/></block><l><option>sprite</option></l></block><script><block s="doSetVar"><l>target</l><block s="reportObject"><block var="object"/></block></block></script><script><block s="doSetVar"><l>target</l><custom-block s="%txt"><block var="object"/></custom-block></block></script></block></script><list></list></block></script></block><block s="doIf"><block s="reportIsA"><block var="target"/><l><option>sprite</option></l></block><script><block s="doTellTo"><block var="target"/><block s="reifyScript"><script><block s="fork"><block s="reifyScript"><script><block s="doForever"><script><block s="doIf"><block s="reportVariadicAnd"><list><block s="reportTouchingObject"><l><option>mouse-pointer</option></l></block><block s="reportMouseDown"></block></list></block><script><block s="doTellTo"><block var="target"/><block var="func"/><list><block var="target"/></list></block><block s="doWaitUntil"><block s="reportNot"><block s="reportMouseDown"></block></block></block></script><list></list></block></script></block></script><list></list></block><list></list></block></script><list></list></block><list></list></block></script><list></list></block></script></block-definition><block-definition s="register func %&apos;method&apos; %&apos;block&apos;" type="command" category="other"><header></header><code></code><translations></translations><inputs><input type="%txt"></input><input type="%cmdRing"></input></inputs><script><block s="doRun"><block s="reportJSFunction"><list><l>method</l><l>func</l></list><l>this.parent.funcmap[method] = func;</l></block><list><block var="method"/><block var="block"/></list></block></script></block-definition><block-definition s="register reporter %&apos;method&apos; %&apos;block&apos;" type="command" category="other"><header></header><code></code><translations></translations><inputs><input type="%txt"></input><input type="%repRing"></input></inputs><script><block s="doRun"><block s="reportJSFunction"><list><l>method</l><l>func</l></list><l>this.parent.reportmap[method] = func;</l></block><list><block var="method"/><block var="block"/></list></block></script></block-definition><block-definition s="set var %&apos;_name&apos; to %&apos;_value&apos;" type="command" category="variables"><comment x="0" y="0" w="240.4931640625" collapsed="true">This block sets the given value (last input) to the variable named with the name givent (var input).&#xD;&#xD;It looks for that variable following the scope order &apos;script&apos; -&gt; &apos;sprite&apos; -&gt; &apos;global&apos; (the first match it finds).&#xD;&#xD;If that variable does not exist (in any scope) an error happens, stopping their script. You can check it before using the &quot;does var (name) exists?&quot; block. </comment><header></header><code></code><translations>ca:assigna a _ el valor _&#xD;es:asignar a _ el valor _&#xD;pt:altera _ para _&#xD;de:setze var _ auf _&#xD;</translations><inputs><input type="%s"><options>§_getVarNamesDict</options></input><input type="%s"></input></inputs><script><block s="doRun"><block s="reportJSFunction"><list><l>name</l><l>value</l><l>proc</l></list><l>if (proc.homeContext.variables.silentFind(name) !== null) {&#xD;    proc.homeContext.variables.silentFind(name).setVar(name,value);&#xD;} else {&#xD;    proc.context.variables.silentFind(name).setVar(name,value);&#xD;}&#xD;</l></block><list><block var="_name"/><block var="_value"/></list></block></script></block-definition><block-definition s="var %&apos;_name&apos;" type="reporter" category="variables"><comment x="0" y="0" w="178.00000000000003" collapsed="true">This block reports the value of the variable with the name given.&#xD;&#xD;It looks for that variable following the scope order &apos;script&apos; -&gt; &apos;sprite&apos; -&gt; &apos;global&apos; (the first match it finds).&#xD;&#xD;If that variable does not exist (in any scope) an error happens, stopping their script. You can check it before using the &quot;does var (name) exists?&quot; block. </comment><header></header><code></code><translations>pt:o valor de _&#xD;</translations><inputs><input type="%s"><options>§_getVarNamesDict</options></input></inputs><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list><l>name</l><l>proc</l></list><l>if (proc.homeContext.variables.silentFind(name) !== null) {&#xD;    return proc.homeContext.variables.silentFind(name).getVar(name);&#xD;} else {&#xD;    return proc.context.variables.silentFind(name).getVar(name);&#xD;};</l></block><list><block var="_name"/></list></block></block></script></block-definition><block-definition s="does var %&apos;_name&apos; exist?" type="predicate" category="variables"><comment x="0" y="0" w="146" collapsed="true">This block reports &quot;true&quot; if there is a variable with this given name (input slot) in that context.&#xD;&#xD;It can be a global, sprite or script variable.&#xD;&#xD;Otherwise it reports &quot;false&quot;.</comment><header></header><code></code><translations>pt:a variável _ existe&#xD;ca:existeix la variable _ ?&#xD;es:existe la variable _ ?&#xD;de:existiert var _ ?&#xD;</translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list><l>name</l><l>proc</l></list><l>if (proc.homeContext.variables.silentFind(name) !== null){&#xD;    return true;&#xD;} else if (proc.context.variables.silentFind(name) !== null) {&#xD;           return true;&#xD;       } else {&#xD;           return false;&#xD;       };</l></block><list><block var="_name"/></list></block></block></script></block-definition><block-definition s="string %&apos;string&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%txt"></input></inputs><script><block s="doReport"><block var="string"/></block></script></block-definition><block-definition s="%&apos;object&apos; . %&apos;property&apos;" type="reporter" category="snapython"><header></header><code>&lt;#1&gt;.&lt;#2&gt;(&lt;#3&gt;)</code><translations></translations><inputs><input type="%s">turtle</input><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>target</l><l>result</l></list></block><block s="doWarp"><script><block s="doIfElse"><block s="reportIsA"><block var="object"/><l><option>sprite</option></l></block><script><block s="doSetVar"><l>target</l><block var="object"/></block></script><script><block s="doIf"><block s="reportIsA"><block var="object"/><l><option>text</option></l></block><script><block s="doIfElse"><block s="reportIsA"><block s="reportObject"><block var="object"/></block><l><option>sprite</option></l></block><script><block s="doSetVar"><l>target</l><block s="reportObject"><block var="object"/></block></block></script><script><block s="doSetVar"><l>target</l><custom-block s="%txt"><block var="object"/></custom-block></block></script></block><block s="doIf"><block s="reportVariadicEquals"><list><block var="target"/><l>self</l></list></block><script><block s="doSetVar"><l>target</l><block s="reportObject"><l><option>myself</option></l></block></block></script><list></list></block></script><list></list></block></script></block><block s="doIf"><block s="reportIsA"><block var="target"/><l><option>sprite</option></l></block><script><block s="doSetVar"><l>result</l><block s="reportAskFor"><block var="target"/><block s="reifyReporter"><autolambda><block s="reportGet"><l></l></block></autolambda><list></list></block><list><block var="property"/></list></block></block><block s="doIfElse"><block s="reportNot"><block s="reportVariadicEquals"><list><block var="result"/><l></l></list></block></block><script><block s="doReport"><block var="result"/></block></script><script><block s="doReport"><block s="reportAttributeOf"><custom-block s="string %txt"><block var="property"/></custom-block><block var="target"/></block></block></script></block></script><list></list></block></script></block></script></block-definition><block-definition s="%&apos;object&apos; . %&apos;method&apos; ( %&apos;params&apos; )" type="reporter" category="snapython"><header></header><code>&lt;#1&gt;.&lt;#2&gt;(&lt;#3&gt;)</code><translations></translations><inputs><input type="%s">turtle</input><input type="%txt">clone<options>clone&#xD;costumes&#xD;distance&#xD;heading&#xD;isdown&#xD;position&#xD;xcor&#xD;ycor</options></input><input type="%mult%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>target</l><l>funcblock</l></list></block><block s="doDeclareVariables"><list><l>v</l><l>input</l><l>values</l><l>result</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>values</l><block s="reportNewList"><list></list></block></block><block s="doForEach"><l>value</l><block var="params"/><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="value"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="value"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>v</l><block var="input"/></block></script><script><block s="doIfElse"><block s="reportIsA"><block var="input"/><l><option>text</option></l></block><script><block s="doSetVar"><l>v</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script><script><block s="doSetVar"><l>v</l><block var="input"/></block></script></block></script></block><block s="doAddToList"><block var="v"/><block var="values"/></block></script></block><block s="doIfElse"><block s="reportIsA"><block var="object"/><l><option>sprite</option></l></block><script><block s="doSetVar"><l>target</l><block var="object"/></block></script><script><block s="doIf"><block s="reportIsA"><block var="object"/><l><option>text</option></l></block><script><block s="doIfElse"><block s="reportIsA"><block s="reportObject"><block var="object"/></block><l><option>sprite</option></l></block><script><block s="doSetVar"><l>target</l><block s="reportObject"><block var="object"/></block></block></script><script><block s="doSetVar"><l>target</l><custom-block s="%txt"><block var="object"/></custom-block></block></script></block><block s="doIf"><block s="reportVariadicEquals"><list><block var="target"/><l>self</l></list></block><script><block s="doSetVar"><l>target</l><block s="reportObject"><l><option>myself</option></l></block></block></script><list></list></block></script><list></list></block></script></block><block s="doIf"><block s="reportIsA"><block var="target"/><l><option>sprite</option></l></block><script><block s="doSetVar"><l>funcblock</l><block s="evaluate"><block s="reportJSFunction"><list><l>method</l></list><l>if (this.parent.reportmap[method] !== undefined ) {&#xD;    return this.parent.reportmap[method];&#xD;} else {&#xD;    return null;&#xD;}</l></block><list><block var="method"/></list></block></block><block s="doIfElse"><block s="reportVariadicOr"><list><block s="reportIsA"><block var="funcblock"/><l><option>reporter</option></l></block><block s="reportIsA"><block var="funcblock"/><l><option>predicate</option></l></block></list></block><script><block s="doReport"><block s="reportAskFor"><block var="target"/><block var="funcblock"/><block var="values"/></block></block></script><script><block s="doSetVar"><l>result</l><block s="reportAskFor"><block var="target"/><block s="reifyReporter"><autolambda><block s="reportGet"><l></l></block></autolambda><list></list></block><list><block var="method"/></list></block></block><block s="doIfElse"><block s="reportNot"><block s="reportVariadicEquals"><list><block var="result"/><l></l></list></block></block><script><block s="doReport"><block var="result"/></block></script><script><block s="doReport"><block s="reportAttributeOf"><custom-block s="string %txt"><block var="method"/></custom-block><block var="target"/></block></block></script></block></script></block></script><list></list></block></script></block></script></block-definition><block-definition s="caculate %&apos;expression&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>i</l><l>brackets</l><l>len</l><l>former</l><l>latter</l><l>expText</l><l>level</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>expText</l><custom-block s="%anyUE . %txt ( %mult%anyUE ）"><block var="expression"/><l>strip</l><list></list></custom-block></block><block s="doIf"><block s="reportVariadicOr"><list><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><l>1</l><block var="expText"/></block><l>&apos;</l></list></block><block s="reportVariadicEquals"><list><block s="reportLetter"><block s="reportTextAttribute"><l><option>length</option></l><block var="expText"/></block><block var="expText"/></block><l>&apos;</l></list></block></list></block><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><l>1</l><block var="expText"/></block><l>&apos;&apos;</l></list></block><block s="reportVariadicEquals"><list><block s="reportLetter"><block s="reportTextAttribute"><l><option>length</option></l><block var="expText"/></block><block var="expText"/></block><l>&apos;&apos;</l></list></block></list></block></list></block><script><block s="doReport"><block s="reportJoinWords"><list><block s="reportLetter"><block s="reportNumbers"><l>2</l><block s="reportDifference"><block s="reportTextAttribute"><l><option>length</option></l><block var="expText"/></block><l>1</l></block></block><block var="expText"/></block></list></block></block></script><list><custom-block s="%txt doenst include any of %txt"><block var="expText"/><l>+-*/%</l></custom-block><script><block s="doReport"><custom-block s="parse %txt"><block var="expText"/></custom-block></block></script></list></block><block s="doSetVar"><l>i</l><l>1</l></block><block s="doSetVar"><l>len</l><block s="reportTextAttribute"><l><option>length</option></l><block var="expText"/></block></block><block s="doSetVar"><l>brackets</l><l>0</l></block><block s="doSetVar"><l>former</l><l></l></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block var="brackets"/><l>0</l></list></block><block s="reportListContainsItem"><block s="reportNewList"><list><l>+</l><l>-</l></list></block><block s="reportLetter"><block var="i"/><block var="expText"/></block></block></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block var="len"/></list></block></list></block><script><block s="doSetVar"><l>former</l><block s="reportJoinWords"><list><block var="former"/><block s="reportLetter"><block var="i"/><block var="expText"/></block></list></block></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>(</l><l>[</l></list></block><block s="reportLetter"><block var="i"/><block var="expText"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>1</l></block></script><list></list></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>)</l><l>]</l></list></block><block s="reportLetter"><block var="i"/><block var="expText"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>-1</l></block></script><list></list></block><block s="doChangeVar"><l>i</l><l>1</l></block></script></block><block s="doIfElse"><block s="reportVariadicLessThanOrEquals"><list><block var="i"/><block var="len"/></list></block><script><block s="doSetVar"><l>latter</l><custom-block s="%n to %n of %txt"><block s="reportVariadicSum"><list><block var="i"/><l>1</l></list></block><block var="len"/><block var="expText"/></custom-block></block><block s="doIfElse"><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="expText"/></block><l>+</l></list></block><script><block s="doReport"><block s="reportVariadicSum"><list><custom-block s="caculate %txt"><block var="former"/></custom-block><custom-block s="caculate %txt"><block var="latter"/></custom-block></list></block></block></script><script><block s="doReport"><block s="reportDifference"><custom-block s="caculate %txt"><block var="former"/></custom-block><custom-block s="caculate %txt"><block var="latter"/></custom-block></block></block></script></block></script><script><block s="doSetVar"><l>i</l><l>1</l></block><block s="doSetVar"><l>brackets</l><l>0</l></block><block s="doSetVar"><l>former</l><l></l></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block var="brackets"/><l>0</l></list></block><block s="reportListContainsItem"><block s="reportNewList"><list><l>*</l><l>/</l><l>%</l></list></block><block s="reportLetter"><block var="i"/><block var="expText"/></block></block></list></block><block s="reportVariadicGreaterThan"><list><block var="i"/><block var="len"/></list></block></list></block><script><block s="doSetVar"><l>former</l><block s="reportJoinWords"><list><block var="former"/><block s="reportLetter"><block var="i"/><block var="expText"/></block></list></block></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>(</l><l>[</l></list></block><block s="reportLetter"><block var="i"/><block var="expText"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>1</l></block></script><list></list></block><block s="doIf"><block s="reportListContainsItem"><block s="reportNewList"><list><l>)</l><l>]</l></list></block><block s="reportLetter"><block var="i"/><block var="expText"/></block></block><script><block s="doChangeVar"><l>brackets</l><l>-1</l></block></script><list></list></block><block s="doChangeVar"><l>i</l><l>1</l></block></script></block><block s="doIfElse"><block s="reportVariadicLessThanOrEquals"><list><block var="i"/><block var="len"/></list></block><script><block s="doSetVar"><l>latter</l><custom-block s="%n to %n of %txt"><block s="reportVariadicSum"><list><block var="i"/><l>1</l></list></block><block var="len"/><block var="expText"/></custom-block></block><block s="doIf"><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="expText"/></block><l>%</l></list></block><script><block s="doReport"><block s="reportModulus"><custom-block s="caculate %txt"><block var="former"/></custom-block><custom-block s="caculate %txt"><block var="latter"/></custom-block></block></block></script><list><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="expText"/></block><l>*</l></list></block><script><block s="doIfElse"><block s="reportVariadicEquals"><list><block s="reportLetter"><block s="reportVariadicSum"><list><block var="i"/><l>1</l></list></block><block var="expText"/></block><l>*</l></list></block><script><block s="doSetVar"><l>latter</l><custom-block s="%n to %n of %txt"><block s="reportVariadicSum"><list><block var="i"/><l>2</l></list></block><block var="len"/><block var="expText"/></custom-block></block><block s="doReport"><block s="reportPower"><custom-block s="caculate %txt"><block var="former"/></custom-block><custom-block s="caculate %txt"><block var="latter"/></custom-block></block></block></script><script><block s="doReport"><block s="reportVariadicProduct"><list><custom-block s="caculate %txt"><block var="former"/></custom-block><custom-block s="caculate %txt"><block var="latter"/></custom-block></list></block></block></script></block></script><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="i"/><block var="expText"/></block><l>/</l></list></block><script><block s="doIfElse"><block s="reportVariadicEquals"><list><block s="reportLetter"><block s="reportVariadicSum"><list><block var="i"/><l>1</l></list></block><block var="expText"/></block><l>/</l></list></block><script><block s="doSetVar"><l>latter</l><custom-block s="%n to %n of %txt"><block s="reportVariadicSum"><list><block var="i"/><l>2</l></list></block><block var="len"/><block var="expText"/></custom-block></block><block s="doReport"><block s="reportMonadic"><l><option>floor</option></l><block s="reportQuotient"><custom-block s="caculate %txt"><block var="former"/></custom-block><custom-block s="caculate %txt"><block var="latter"/></custom-block></block></block></block></script><script><block s="doReport"><block s="reportQuotient"><custom-block s="caculate %txt"><block var="former"/></custom-block><custom-block s="caculate %txt"><block var="latter"/></custom-block></block></block></script></block></script></list></block></script><script><block s="doIfElse"><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportLetter"><l>1</l><block var="expText"/></block><l>(</l></list></block><block s="reportVariadicEquals"><list><block s="reportLetter"><block var="len"/><block var="expText"/></block><l>)</l></list></block></list></block><script><block s="doReport"><custom-block s="caculate %txt"><custom-block s="%n to %n of %txt"><l>2</l><block s="reportDifference"><block var="len"/><l>1</l></block><block var="expText"/></custom-block></custom-block></block></script><script><block s="doReport"><custom-block s="parse %txt"><block var="expText"/></custom-block></block></script></block></script></block></script></block></script></block></script><scripts><script x="388.3333333333333" y="1302.6666666666667"><block s="doIfElse"><l/><script></script><script></script></block></script></scripts></block-definition><block-definition s="%&apos;object&apos; . %&apos;method&apos; ( %&apos;params&apos; ）" type="command" category="snapython"><header></header><code>&lt;#1&gt;.&lt;#2&gt;(&lt;#3&gt;)</code><translations></translations><inputs><input type="%s">turtle</input><input type="%txt">forward<options>clone&#xD;colormode&#xD;clearscreen&#xD;down&#xD;forward&#xD;goto&#xD;hide&#xD;home&#xD;left&#xD;pencolor&#xD;pensize&#xD;pendown&#xD;penup&#xD;reset&#xD;right&#xD;seth&#xD;setxy&#xD;setpos&#xD;setx&#xD;sety&#xD;shape&#xD;show&#xD;stamp</options></input><input type="%mult%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>target</l><l>funcblock</l></list></block><block s="doDeclareVariables"><list><l>v</l><l>input</l><l>values</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>values</l><block s="reportNewList"><list></list></block></block><block s="doForEach"><l>value</l><block var="params"/><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="value"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="value"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>v</l><block var="input"/></block></script><script><block s="doIfElse"><block s="reportIsA"><block var="input"/><l><option>text</option></l></block><script><block s="doSetVar"><l>v</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script><script><block s="doSetVar"><l>v</l><block var="input"/></block></script></block></script></block><block s="doAddToList"><block var="v"/><block var="values"/></block></script></block><block s="doIfElse"><block s="reportIsA"><block var="object"/><l><option>sprite</option></l></block><script><block s="doSetVar"><l>target</l><block var="object"/></block></script><script><block s="doIf"><block s="reportIsA"><block var="object"/><l><option>text</option></l></block><script><block s="doIfElse"><block s="reportIsA"><block s="reportObject"><block var="object"/></block><l><option>sprite</option></l></block><script><block s="doSetVar"><l>target</l><block s="reportObject"><block var="object"/></block></block></script><script><block s="doSetVar"><l>target</l><custom-block s="%txt"><block var="object"/></custom-block></block></script></block><block s="doIf"><block s="reportVariadicEquals"><list><block var="target"/><l>self</l></list></block><script><block s="doSetVar"><l>target</l><block s="reportObject"><l><option>myself</option></l></block></block></script><list></list></block></script><list></list></block></script></block><block s="doIf"><block s="reportIsA"><block var="target"/><l><option>sprite</option></l></block><script><block s="doSetVar"><l>funcblock</l><block s="evaluate"><block s="reportJSFunction"><list><l>method</l></list><l>if (this.parent.funcmap[method]){&#xD;    return this.parent.funcmap[method];&#xD;} else {&#xD;    return null;&#xD;};</l></block><list><block var="method"/></list></block></block><block s="doIf"><block s="reportVariadicAnd"><list><block s="reportNot"><block s="reportVariadicEquals"><list><block var="funcblock"/><l></l></list></block></block><block s="reportIsA"><block var="funcblock"/><l><option>command</option></l></block></list></block><script><block s="doIf"><custom-block s="%anyUE == %anyUE"><custom-block s="type( %anyUE )"><block s="reportListItem"><l>1</l><block var="values"/></block></custom-block><l>list</l></custom-block><script><block s="doTellTo"><block var="target"/><block var="funcblock"/><block s="reportListItem"><l>1</l><block var="values"/></block></block></script><list><custom-block s="%anyUE == %anyUE"><custom-block s="type( %anyUE )"><block s="reportListItem"><l>1</l><block var="values"/></block></custom-block><l>tuple</l></custom-block><script><block s="doTellTo"><block var="target"/><block var="funcblock"/><block s="reportListItem"><l>2</l><block s="reportListItem"><l>1</l><block var="values"/></block></block></block></script><l><bool>true</bool></l><script><block s="doTellTo"><block var="target"/><block var="funcblock"/><block var="values"/></block></script></list></block></script><list></list></block></script><list></list></block></script></block></script></block-definition><block-definition s="%&apos;text&apos; doenst include any of %&apos;chars&apos;" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%txt"></input><input type="%txt"></input></inputs><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list><l>text</l><l>chars</l></list><l>return !chars.split(&apos;&apos;).some(char =&gt; text.includes(char));</l></block><list><block var="text"/><block var="chars"/></list></block></block></script></block-definition><block-definition s="%&apos;start&apos; to %&apos;end&apos; of %&apos;text&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input><input type="%txt"></input></inputs><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list><l>txt</l><l>start</l><l>end</l></list><l>return txt.slice(start-1,end);</l></block><list><block var="text"/><block var="start"/><block var="end"/></list></block></block></script></block-definition><block-definition s="def %&apos;funcname&apos; : %&apos;function&apos;" type="command" category="snapython"><header></header><code>def &lt;#1&gt;:&#xD;    &lt;#2&gt;</code><translations></translations><inputs><input type="%txt"></input><input type="%cmdRing"></input></inputs><script><block s="doDeclareVariables"><list><l>nArgs</l><l>funcstr</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>nArgs</l><block s="evaluate"><block s="reportJSFunction"><list><l>context</l></list><l>return context.inputs.length;</l></block><list><block var="function"/></list></block></block><block s="doSetVar"><l>funcstr</l><block var="funcname"/></block><block s="doRepeat"><block var="nArgs"/><script><block s="doSetVar"><l>funcstr</l><block s="reportJoinWords"><list><block var="funcstr"/><l> _</l></list></block></block></script></block><block s="doDefineBlock"><l>block</l><block var="funcstr"/><block var="function"/></block><block s="doIf"><block s="reportListContainsItem"><block s="reportListAttribute"><l><option>flatten</option></l><block s="reportTextSplit"><block var="function"/><l><option>blocks</option></l></block></block><block s="reifyScript"><script><block s="doReport"><l></l></block></script><list></list></block></block><script><block s="doSetBlockAttribute"><l><option>type</option></l><block var="block"/><l>reporter</l></block></script><list></list></block></script></block></script></block-definition><block-definition s="$list Blocks %&apos;code&apos; to Python" type="reporter" category="snapython"><header></header><code></code><translations></translations><inputs><input type="%cs"></input></inputs><script><block s="doReport"><block s="reportMappedCode"><block var="code"/></block></block></script></block-definition><block-definition s="$flash sort %&apos;data&apos; ordering with %&apos;function&apos;" type="reporter" category="lists"><comment x="0" y="0" w="161.14285714285708" collapsed="false">Reports a sorted version of the list in its first input slot, using the comparison function in the second input slot.  For a list of numbers, using &lt; as the comparison function will sort from low to high; using &gt; will sort from high to low.</comment><header></header><code></code><translations>ca:ordena _ segons criteri _&#xD;</translations><inputs><input type="%l"></input><input type="%predRing"></input></inputs><script><block s="doReport"><block s="reportApplyExtension"><l>lst_sort(list, fn)</l><list><block var="data"/><block var="function"/></list></block></block></script></block-definition><block-definition s="☠︎ linked? %&apos;data&apos;" type="predicate" category="lists" helper="true"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportApplyExtension"><l>lst_linked(list)</l><list><block var="data"/></list></block></block></script></block-definition><block-definition s="☠︎ link %&apos;data&apos;" type="reporter" category="lists" helper="true"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doIf"><block s="reportListIsEmpty"><block var="data"/></block><script><block s="doReport"><block var="data"/></block></script><list></list></block><block s="doReport"><block s="reportCONS"><block s="reportListItem"><l>1</l><block var="data"/></block><block s="reportCDR"><block var="data"/></block></block></block></script></block-definition><block-definition s="sentence $arrowRight list %&apos;text&apos;" type="reporter" category="operators"><comment x="0" y="0" w="196" collapsed="false">Takes a sentence in text string form and reports the sentence as a list of its words.</comment><header></header><code></code><translations>de:Satz $arrowRight Liste _&#xD;ca:frase $arrowRight llista _&#xD;es:frase $arrowRight lista _&#xD;fr:phrase $arrowRight liste _&#xD;pt:uma lista com as palavras da frase _&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doReport"><block s="reportAtomicKeep"><block s="reifyPredicate"><autolambda><block s="reportNot"><block s="reportVariadicEquals"><list><block s="reportTextAttribute"><l><option>length</option></l><l></l></block><l>0</l></list></block></block></autolambda><list></list></block><block s="reportTextSplit"><block var="text"/><l><option>whitespace</option></l></block></block></block></script></block-definition><block-definition s="%&apos;x&apos; in %&apos;list&apos;" type="predicate" category="snapython"><header></header><code>&lt;#1&gt; in &lt;#2&gt;</code><translations></translations><inputs><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>value1</l><l>value2</l><l>input</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="x"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="x"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value1</l><block var="input"/></block></script><script><block s="doSetVar"><l>value1</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doSetVar"><l>input</l><block s="evaluate"><block var="list"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="list"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value2</l><block var="input"/></block></script><script><block s="doSetVar"><l>value2</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doIf"><custom-block s="%anyUE == %anyUE"><custom-block s="type( %anyUE )"><block var="value2"/></custom-block><l>list</l></custom-block><script><block s="doReport"><block s="reportListContainsItem"><block var="value2"/><block var="value1"/></block></block></script><list><custom-block s="%anyUE == %anyUE"><custom-block s="type( %anyUE )"><block var="value2"/></custom-block><l>tuple</l></custom-block><script><block s="doReport"><block s="reportListContainsItem"><block s="reportListItem"><l>2</l><block var="value2"/></block><block var="value1"/></block></block></script><custom-block s="%anyUE == %anyUE"><custom-block s="type( %anyUE )"><block var="value2"/></custom-block><l>tuple</l></custom-block><script><block s="doReport"><block s="reportListContainsItem"><block s="reportListItem"><l>1</l><block s="reportListAttribute"><l><option>columns</option></l><block s="reportListItem"><l>2</l><block var="value2"/></block></block></block><block var="value1"/></block></block></script></list></block></script></block></script></block-definition><block-definition s="%&apos;x&apos; not in %&apos;list&apos;" type="predicate" category="snapython"><header></header><code>&lt;#1&gt; not in &lt;#2&gt;</code><translations></translations><inputs><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>value1</l><l>value2</l><l>input</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="x"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="x"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value1</l><block var="input"/></block></script><script><block s="doSetVar"><l>value1</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doSetVar"><l>input</l><block s="evaluate"><block var="list"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="list"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value2</l><block var="input"/></block></script><script><block s="doSetVar"><l>value2</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doReport"><custom-block s="not %b"><custom-block s="%anyUE in %anyUE"><block var="value1"/><block var="value2"/></custom-block></custom-block></block></script></block></script></block-definition><block-definition s="if %&apos;condition&apos; : %&apos;true case&apos; %&apos;else pairs&apos;" type="command" category="snapython" primitive="doIf"><header></header><code></code><translations></translations><inputs><input type="%b" initial="1"></input><input type="%cs" initial="1"></input><input type="%elseif" initial="1"></input></inputs><script><block s="doPrimitive"><l><bool>true</bool></l><l>doIf</l></block></script></block-definition><block-definition s="math. %&apos;property&apos;" type="reporter" category="snapython"><header></header><code>math.&lt;#1&gt;</code><translations></translations><inputs><input type="%txt">pi<options>pi&#xD;e&#xD;inf</options></input></inputs><script><block s="doIfElse"><block s="reportVariadicEquals"><list><block var="property"/><l>pi</l></list></block><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list></list><l>return Math.PI;</l></block><list></list></block></block></script><script><block s="doIfElse"><block s="reportVariadicEquals"><list><block var="property"/><l>e</l></list></block><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list></list><l>return Math.E;</l></block><list></list></block></block></script><script><block s="doIf"><block s="reportVariadicEquals"><list><block var="property"/><l>inf</l></list></block><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list></list><l>return Infinity;</l></block><list></list></block></block></script><list></list></block></script></block></script></block></script></block-definition><block-definition s="math. %&apos;func&apos; ( %&apos;params&apos; )" type="reporter" category="snapython"><header></header><code>math.&lt;#1&gt;(&lt;#2&gt;)</code><translations></translations><inputs><input type="%txt">sqrt<options>fabs&#xD;ceil&#xD;floor&#xD;exp&#xD;log&#xD;pow&#xD;sqrt&#xD;sin&#xD;cos&#xD;tan&#xD;asin&#xD;acos&#xD;atan&#xD;radians&#xD;degrees&#xD;sinh&#xD;cosh</options></input><input type="%mult%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>v</l><l>input</l><l>values</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>values</l><block s="reportNewList"><list></list></block></block><block s="doForEach"><l>value</l><block var="params"/><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="value"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="value"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>v</l><block var="input"/></block></script><script><block s="doIfElse"><block s="reportIsA"><block var="input"/><l><option>text</option></l></block><script><block s="doSetVar"><l>v</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script><script><block s="doSetVar"><l>v</l><block var="input"/></block></script></block></script></block><block s="doAddToList"><block var="v"/><block var="values"/></block></script></block><custom-block s="if %b : %cs elif %b : %cs else : %cs"><block s="reportVariadicEquals"><list><block var="func"/><l>fabs</l></list></block><script><block s="doReport"><block s="evaluate"><block s="reifyReporter"><autolambda><block s="reportMonadic"><l><option>abs</option></l><l></l></block></autolambda><list></list></block><list><block s="reportListItem"><l>1</l><block var="values"/></block></list></block></block></script><block s="reportVariadicEquals"><list><block var="func"/><l>ceil</l></list></block><script><block s="doReport"><block s="evaluate"><block s="reifyReporter"><autolambda><block s="reportMonadic"><l><option>ceiling</option></l><l></l></block></autolambda><list></list></block><list><block s="reportListItem"><l>1</l><block var="values"/></block></list></block></block></script><script><custom-block s="if %b : %cs elif %b : %cs else : %cs"><block s="reportVariadicEquals"><list><block var="func"/><l>floor</l></list></block><script><block s="doReport"><block s="evaluate"><block s="reifyReporter"><autolambda><block s="reportMonadic"><l><option>floor</option></l><l></l></block></autolambda><list></list></block><list><block s="reportListItem"><l>1</l><block var="values"/></block></list></block></block></script><block s="reportVariadicEquals"><list><block var="func"/><l>exp</l></list></block><script><block s="doReport"><block s="evaluate"><block s="reifyReporter"><autolambda><block s="reportMonadic"><l><option>e^</option></l><l></l></block></autolambda><list></list></block><list><block s="reportListItem"><l>1</l><block var="values"/></block></list></block></block></script><script><custom-block s="if %b : %cs elif %b : %cs else : %cs"><block s="reportVariadicEquals"><list><block var="func"/><l>log</l></list></block><script><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block var="values"/></block><l>1</l></list></block><script><block s="doReport"><block s="evaluate"><block s="reifyReporter"><autolambda><block s="reportQuotient"><block s="reportMonadic"><l><option>ln</option></l><block var="a"/></block><block s="reportMonadic"><l><option>ln</option></l><block var="b"/></block></block></autolambda><list><l>a</l><l>b</l></list></block><list><block s="reportListItem"><l>1</l><block var="values"/></block><block s="reportListItem"><l>2</l><block var="values"/></block></list></block></block></script><script><block s="doReport"><block s="evaluate"><block s="reifyReporter"><autolambda><block s="reportMonadic"><l><option>ln</option></l><l></l></block></autolambda><list></list></block><list><block s="reportListItem"><l>1</l><block var="values"/></block></list></block></block></script></block></script><block s="reportVariadicEquals"><list><block var="func"/><l>pow</l></list></block><script><block s="doReport"><block s="evaluate"><block s="reifyReporter"><autolambda><block s="reportPower"><l></l><l></l></block></autolambda><list></list></block><list><block s="reportListItem"><l>1</l><block var="values"/></block><block s="reportListItem"><l>2</l><block var="values"/></block></list></block></block></script><script><custom-block s="if %b : %cs elif %b : %cs else : %cs"><block s="reportVariadicEquals"><list><block var="func"/><l>sqrt</l></list></block><script><block s="doReport"><block s="evaluate"><block s="reifyReporter"><autolambda><block s="reportMonadic"><l><option>sqrt</option></l><l></l></block></autolambda><list></list></block><list><block s="reportListItem"><l>1</l><block var="values"/></block></list></block></block></script><block s="reportVariadicEquals"><list><block var="func"/><l>sin</l></list></block><script><block s="doReport"><block s="evaluate"><block s="reifyReporter"><autolambda><block s="reportMonadic"><l><option>sin</option></l><l></l></block></autolambda><list></list></block><list><block s="reportListItem"><l>1</l><block var="values"/></block></list></block></block></script><script><custom-block s="if %b : %cs elif %b : %cs else : %cs"><block s="reportVariadicEquals"><list><block var="func"/><l>cos</l></list></block><script><block s="doReport"><block s="evaluate"><block s="reifyReporter"><autolambda><block s="reportMonadic"><l><option>cos</option></l><l></l></block></autolambda><list></list></block><list><block s="reportListItem"><l>1</l><block var="values"/></block></list></block></block></script><block s="reportVariadicEquals"><list><block var="func"/><l>tan</l></list></block><script><block s="doReport"><block s="evaluate"><block s="reifyReporter"><autolambda><block s="reportMonadic"><l><option>tan</option></l><l></l></block></autolambda><list></list></block><list><block s="reportListItem"><l>1</l><block var="values"/></block></list></block></block></script><script><custom-block s="if %b : %cs elif %b : %cs else : %cs"><block s="reportVariadicEquals"><list><block var="func"/><l>asin</l></list></block><script><block s="doReport"><block s="evaluate"><block s="reifyReporter"><autolambda><block s="reportMonadic"><l><option>asin</option></l><l></l></block></autolambda><list></list></block><list><block s="reportListItem"><l>1</l><block var="values"/></block></list></block></block></script><block s="reportVariadicEquals"><list><block var="func"/><l>acos</l></list></block><script><block s="doReport"><block s="evaluate"><block s="reifyReporter"><autolambda><block s="reportMonadic"><l><option>acos</option></l><l></l></block></autolambda><list></list></block><list><block s="reportListItem"><l>1</l><block var="values"/></block></list></block></block></script><script><custom-block s="if %b : %cs elif %b : %cs else : %cs"><block s="reportVariadicEquals"><list><block var="func"/><l>atan</l></list></block><script><block s="doReport"><block s="evaluate"><block s="reifyReporter"><autolambda><block s="reportMonadic"><l><option>atan</option></l><l></l></block></autolambda><list></list></block><list><block s="reportListItem"><l>1</l><block var="values"/></block></list></block></block></script><block s="reportVariadicEquals"><list><block var="func"/><l>radians</l></list></block><script><block s="doReport"><block s="evaluate"><block s="reifyReporter"><autolambda><block s="reportVariadicProduct"><list><l></l><block s="reportQuotient"><custom-block s="math. %txt"><l>pi</l></custom-block><l>180</l></block></list></block></autolambda><list></list></block><list><block s="reportListItem"><l>1</l><block var="values"/></block></list></block></block></script><script><custom-block s="if %b : %cs elif %b : %cs else : %cs"><block s="reportVariadicEquals"><list><block var="func"/><l>degrees</l></list></block><script><block s="doReport"><block s="evaluate"><block s="reifyReporter"><autolambda><block s="reportVariadicProduct"><list><l></l><block s="reportQuotient"><l>180</l><custom-block s="math. %txt"><l>pi</l></custom-block></block></list></block></autolambda><list></list></block><list><block s="reportListItem"><l>1</l><block var="values"/></block></list></block></block></script><block s="reportVariadicEquals"><list><block var="func"/><l>sinh</l></list></block><script><block s="doReport"><block s="evaluate"><block s="reifyReporter"><autolambda><block s="reportQuotient"><block s="reportDifference"><block s="reportMonadic"><l><option>e^</option></l><l></l></block><block s="reportMonadic"><l><option>e^</option></l><block s="reportMonadic"><l><option>neg</option></l><l></l></block></block></block><l>2</l></block></autolambda><list></list></block><list><block s="reportListItem"><l>1</l><block var="values"/></block></list></block></block></script><script></script></custom-block></script></custom-block></script></custom-block></script></custom-block></script></custom-block></script></custom-block></script></custom-block></script></custom-block></script></block></script></block-definition><block-definition s="%&apos;trans&apos; ( %&apos;x&apos; )" type="reporter" category="snapython"><header></header><code>&lt;#1&gt;(&lt;#2&gt;)</code><translations></translations><inputs><input type="%txt" initial="1">int<options>int&#xD;float&#xD;str&#xD;chr&#xD;ord</options></input><input type="%anyUE" initial="1"></input></inputs><script><block s="doDeclareVariables"><list><l>value</l><l>input</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>input</l><block s="evaluate"><block var="x"/><list></list></block></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportTextSplit"><block var="x"/><l><option>blocks</option></l></block></block><l>1</l></list></block><script><block s="doSetVar"><l>value</l><block var="input"/></block></script><script><block s="doSetVar"><l>value</l><custom-block s="parse %txt"><block var="input"/></custom-block></block></script></block><block s="doIf"><block s="reportVariadicEquals"><list><block var="trans"/><l>float</l></list></block><script><block s="doIfElse"><block s="reportIsA"><block var="value"/><l><option>number</option></l></block><script><block s="doReport"><block var="value"/></block></script><script><block s="doReport"><l>0</l></block></script></block></script><list><block s="reportVariadicEquals"><list><block var="trans"/><l>str</l></list></block><script><block s="doReport"><custom-block s="toString %anyUE"><block var="value"/></custom-block></block></script><block s="reportVariadicEquals"><list><block var="trans"/><l>ord</l></list></block><script><block s="doReport"><block s="reportUnicode"><block var="value"/></block></block></script><block s="reportVariadicEquals"><list><block var="trans"/><l>chr</l></list></block><script><block s="doReport"><block s="reportUnicodeAsLetter"><block var="value"/></block></block></script><block s="reportVariadicEquals"><list><block var="trans"/><l>int</l></list></block><script><block s="doIfElse"><block s="reportIsA"><block var="value"/><l><option>number</option></l></block><script><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block var="value"/><l>0</l></list></block><script><block s="doReport"><block s="reportMonadic"><l><option>floor</option></l><block var="value"/></block></block></script><script><block s="doReport"><block s="reportMonadic"><l><option>ceiling</option></l><block var="value"/></block></block></script></block></script><script><block s="doReport"><l>0</l></block></script></block></script></list></block><block s="doReport"><l></l></block></script></block></script></block-definition><block-definition s="multiline %&apos;text&apos;" type="reporter" category="operators"><header></header><code></code><translations>pt:o texto multilinha _&#xD;ca:multilínia _&#xD;</translations><inputs><input type="%mlt"></input></inputs><script><block s="doReport"><block var="text"/></block></script></block-definition><block-definition s="substring of %&apos;string&apos; before %&apos;marker&apos;" type="reporter" category="operators"><comment x="0" y="0" w="175.33333333333334" collapsed="false">Reports the part of the first string up to the first instance of the second string inside it.  If the second string isn&apos;t found, reports the entire first string.</comment><header></header><code></code><translations>pt:o texto de _ antes de _&#xD;ca:part del text _ anterior a _&#xD;</translations><inputs><input type="%txt"></input><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>index</l></list></block><block s="doSetVar"><l>index</l><custom-block s="position of %s in %txt"><block var="marker"/><block var="string"/></custom-block></block><block s="doReport"><block s="reportIfElse"><block s="reportVariadicEquals"><list><block var="index"/><l>0</l></list></block><block var="string"/><block s="reportIfElse"><block s="reportVariadicEquals"><list><block var="index"/><l>1</l></list></block><l></l><custom-block s="substring of %txt from position %n to position %n inclusive"><block var="string"/><l>1</l><block s="reportDifference"><block var="index"/><l>1</l></block></custom-block></block></block></block></script></block-definition><block-definition s="substring of %&apos;string&apos; after %&apos;marker&apos;" type="reporter" category="operators"><comment x="0" y="0" w="203.33333333333334" collapsed="false">Reports the portion of the first input string starting after the first occurrence of the second string.  If the second string isn&apos;t found in the first string, reports an empty string.</comment><header></header><code></code><translations>pt:o texto de _ depois de _&#xD;ca:part del text _ posterior a _&#xD;</translations><inputs><input type="%txt"></input><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>index</l><l>end</l></list></block><block s="doSetVar"><l>index</l><custom-block s="position of %s in %txt"><block var="marker"/><block var="string"/></custom-block></block><block s="doSetVar"><l>end</l><block s="reportVariadicSum"><list><block var="index"/><block s="reportTextAttribute"><l><option>length</option></l><block var="marker"/></block></list></block></block><block s="doReport"><block s="reportIfElse"><block s="reportVariadicEquals"><list><block var="index"/><l>0</l></list></block><l></l><block s="reportIfElse"><block s="reportVariadicGreaterThan"><list><block var="end"/><block s="reportTextAttribute"><l><option>length</option></l><block var="string"/></block></list></block><l></l><custom-block s="substring of %txt from position %n to position %n inclusive"><block var="string"/><block var="end"/><l></l></custom-block></block></block></block></script></block-definition><block-definition s="position of %&apos;small&apos; in %&apos;large&apos;" type="reporter" category="operators"><comment x="0" y="0" w="294" collapsed="false">Reports the character position (starting from 1) of the beginning of the first input string inside the second input string.&#xD;If it&apos;s not found, reports 0.</comment><header></header><code></code><translations>pt:a posição de _ em _&#xD;ca:posició de _ en _&#xD;</translations><inputs><input type="%s"></input><input type="%txt"></input></inputs><script><block s="doReport"><block s="reportIfElse"><custom-block s="use case-independent comparison"></custom-block><block s="reportApplyExtension"><l>txt_indexof(sub, txt)</l><list><custom-block s="to lower case %txt"><block var="small"/></custom-block><custom-block s="to lower case %txt"><block var="large"/></custom-block></list></block><block s="reportApplyExtension"><l>txt_indexof(sub, txt)</l><list><block var="small"/><block var="large"/></list></block></block></block></script></block-definition><block-definition s="use case-independent comparisons %&apos;tf&apos;" type="command" category="operators"><comment x="0" y="0" w="225.33333333333334" collapsed="false">If input is TRUE, comparisons made by functions in the string library will be case-independent (so &quot;FOO&quot; = &quot;foo&quot;).  This is the default.&#xD;If input is FALSE, comparisons will be exact.</comment><header></header><code></code><translations>pt:altera comparações ignorando distinção minúsculas/maiúsculas para _&#xD;ca:ignora la diferenciació de majúscules _&#xD;</translations><inputs><input type="%b"></input></inputs><script><block s="doIfElse"><block s="reportNot"><block var="tf"/></block><script><block s="doApplyExtension"><l>var_declare(scope, name)</l><list><l>global</l><l>_case indepent</l></list></block><block s="doApplyExtension"><l>var_set(name, val)</l><list><l>_case indepent</l><block s="reportBoolean"><l><bool>false</bool></l></block></list></block></script><script><block s="doApplyExtension"><l>var_delete(name)</l><list><l>_case indepent</l></list></block></script></block></script></block-definition><block-definition s="substring of %&apos;str&apos; from position %&apos;start&apos; to position %&apos;end&apos; inclusive" type="reporter" category="operators"><comment x="0" y="0" w="297.3333333333333" collapsed="false">Reports the portion of the first input (string) starting at the position given by the second input (counting from 1, like LETTER n OF) and ending at the position given by the third input (also counting from 1).  If the third input is empty, reports the portion from the first position to the end of the string.&#xD;If a position number is negative, counts from the end backward, so -1 is the last character, -2 is the next to last, etc.</comment><header></header><code></code><translations>pt:o texto de _ entre as posições _ e _ , inclusive&#xD;ca:part del text _ des de la posició _ fins _&#xD;</translations><inputs><input type="%txt"></input><input type="%n"></input><input type="%n"></input></inputs><script><block s="doReport"><block s="reportJoinWords"><block s="reportLetter"><block s="reportNumbers"><block s="reportIfElse"><block s="reportVariadicLessThan"><list><block var="start"/><l>0</l></list></block><block s="reportVariadicSum"><list><block s="reportVariadicSum"><list><block var="start"/><l>1</l></list></block><block s="reportTextAttribute"><l><option>length</option></l><block var="str"/></block></list></block><block var="start"/></block><block s="reportIfElse"><block s="reportVariadicEquals"><list><block var="end"/><l>0</l></list></block><block s="reportTextAttribute"><l><option>length</option></l><block var="str"/></block><block s="reportIfElse"><block s="reportVariadicLessThan"><list><block var="end"/><l>0</l></list></block><block s="reportVariadicSum"><list><block s="reportVariadicSum"><list><block var="end"/><l>1</l></list></block><block s="reportTextAttribute"><l><option>length</option></l><block var="str"/></block></list></block><block var="end"/></block></block></block><block var="str"/></block></block></block></script></block-definition><block-definition s="text %&apos;string&apos; contains %&apos;marker&apos;" type="predicate" category="operators"><comment x="0" y="0" w="218" collapsed="false">Reports True if the first input string contains the second input string, otherwise false.&#xD;&#xD;Comparison is case-independent by default; use USE CASE-INDEPENDENT COMPARISONS to change that.</comment><header></header><code></code><translations>pt:o texto de _ antes de _&#xD;ca:text _ conté _ ?&#xD;</translations><inputs><input type="%txt"></input><input type="%txt"></input></inputs><script><block s="doReport"><block s="reportVariadicGreaterThan"><list><custom-block s="position of %s in %txt"><block var="marker"/><block var="string"/></custom-block><l>0</l></list></block></block></script></block-definition><block-definition s="to lower case %&apos;text&apos;" type="reporter" category="operators"><comment x="0" y="0" w="275.3333333333333" collapsed="false">Reports the input text with lower case letters instead of capital letters in the input.  Uses the user&apos;s locale&apos;s rules for case conversion.</comment><header></header><code></code><translations>pt:em minúsculas _&#xD;ca:_ a minúscules&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doReport"><block s="reportApplyExtension"><l>txt_lowercase(txt)</l><list><block s="reportJoinWords"><list><block var="text"/></list></block></list></block></block></script></block-definition><block-definition s="use case-independent comparison" type="predicate" category="sensing"><header></header><code></code><translations>ca:comparacions ignorant majúscules?&#xD;</translations><inputs></inputs><script><block s="doDeclareVariables"><list><l>result</l></list></block><block s="doApplyExtension"><l>err_try(cmd, catch, err)</l><list><block s="reifyScript"><script><block s="doSetVar"><l>result</l><block s="reportApplyExtension"><l>var_get(name)</l><list><l>_case indepent</l></list></block></block></script><list></list></block><block s="reifyScript"><script><block s="doSetVar"><l>result</l><block s="reportBoolean"><l><bool>true</bool></l></block></block></script><list></list></block><l></l></list></block><block s="doApplyExtension"><l>err_reset</l><list></list></block><block s="doReport"><block var="result"/></block></script></block-definition><block-definition s="polygon(len,number)" type="command" category="other"><header></header><code></code><translations></translations><inputs></inputs></block-definition><block-definition s="dict %&apos;dict&apos; delete key %&apos;key&apos;" type="command" category="variables"><header></header><code></code><translations></translations><inputs><input type="%l"></input><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>pairs</l></list></block><block s="doWarp"><script><block s="doIf"><block s="reportVariadicEquals"><list><custom-block s="type( %anyUE )"><block var="dict"/></custom-block><l>dict</l></list></block><script><block s="doSetVar"><l>pairs</l><block s="reportKeep"><block s="reifyPredicate"><autolambda><block s="reportVariadicNotEquals"><list><block s="reportListItem"><l>1</l><l/></block><block var="key"/></list></block></autolambda><list></list></block><block s="reportListItem"><l>2</l><block var="dict"/></block></block></block><block s="doReplaceInList"><l>2</l><block var="dict"/><block var="pairs"/></block></script><list></list></block></script></block></script></block-definition></blocks><primitives></primitives><stage name="舞台" 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="true" inheritance="true" sublistIDs="false" id="12747"><pentrails>data:image/png;base64,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</pentrails><costumes><list struct="atomic" id="12748"></list></costumes><sounds><list struct="atomic" id="12749"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites select="1"><sprite name="turtle" idx="1" x="-90.00000000000023" y="-180.17291066282428" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="false" hidden="true" costume="1" color="80,80,80,1" pen="tip" id="12754"><costumes><list id="12755"><item><ref mediaID="tictoctoe_pythonblocks_turtle_cst_blank"></ref></item><item><ref mediaID="tictoctoe_pythonblocks_turtle_cst_O"></ref></item><item><ref mediaID="tictoctoe_pythonblocks_turtle_cst_X"></ref></item><item><ref mediaID="tictoctoe_pythonblocks_turtle_cst_turtle07"></ref></item></list></costumes><sounds><list struct="atomic" id="12756"></list></sounds><blocks></blocks><variables><variable name="order"><l>9</l></variable><variable name="used"><bool>false</bool></variable></variables><scripts><script x="58.957356770833336" y="612.4666666666666"><custom-block s="def %txt : %cmdRing"><l>cloneOnclick</l><block s="reifyScript"><script><custom-block s="if %b : %cs else : %cs"><custom-block s="%anyUE == %anyUE"><l>whosturn</l><l>"circle"</l></custom-block><script><custom-block s="if %b : %cs"><custom-block s="not %b"><custom-block s="%s . %txt ( %mult%anyUE )"><l>self</l><l>used</l><list></list></custom-block></custom-block><script><custom-block s="%s . %txt ( %mult%anyUE ）"><l>self</l><l>shape</l><list><l>"O"</l></list></custom-block><custom-block s="%anyUE = %anyUE"><l>board[self.order]</l><l>"O"</l></custom-block><custom-block s="%anyUE = %anyUE"><l>self.used</l><l>True</l></custom-block><custom-block s="%anyUE = %anyUE"><l>whosturn</l><l>"cross"</l></custom-block><custom-block s="if %b : %cs"><custom-block s="judge %s"><l>"O"</l></custom-block><script><block s="doSayFor"><l>O Win！</l><l>2</l></block></script></custom-block></script></custom-block></script><script><custom-block s="if %b : %cs"><custom-block s="not %b"><custom-block s="%s . %txt ( %mult%anyUE )"><l>self</l><l>used</l><list></list></custom-block></custom-block><script><custom-block s="%s . %txt ( %mult%anyUE ）"><l>self</l><l>shape</l><list><l>"X"</l></list></custom-block><custom-block s="%anyUE = %anyUE"><l>board[self.order]</l><l>"X"</l></custom-block><custom-block s="%anyUE = %anyUE"><l>self.used</l><l>True</l></custom-block><custom-block s="%anyUE = %anyUE"><l>whosturn</l><l>"circle"</l></custom-block><custom-block s="if %b : %cs"><custom-block s="judge %s"><l>"X"</l></custom-block><script><block s="doSayFor"><l>X Win！</l><l>2</l></block></script></custom-block></script></custom-block></script></custom-block></script><list></list></block></custom-block></script><script x="28.757356770833326" y="6.666666666666667"><block s="receiveGo"></block><custom-block s="initSnapython"></custom-block><custom-block s="global %mult%txt"><list><l>side</l><l>board</l><l>whosturn</l><l>grids</l></list></custom-block><custom-block s="%anyUE = %anyUE"><l>whosturn</l><l>"circle"</l></custom-block><custom-block s="%anyUE = %anyUE"><l>side</l><l>90</l></custom-block><custom-block s="%anyUE = %anyUE"><l>board</l><custom-block s="%anyUE * %anyUE"><l>[""]</l><l>9</l></custom-block></custom-block><custom-block s="%anyUE = %anyUE"><l>grids</l><l>[]</l></custom-block><custom-block s="%anyUE = %anyUE"><l>turtle.order</l><l>0</l></custom-block><custom-block s="%anyUE = %anyUE"><l>turtle.used</l><l>False</l></custom-block><custom-block s="%s . %txt ( %mult%anyUE ）"><l>turtle</l><l>reset</l><list></list></custom-block><custom-block s="%s . %txt ( %mult%anyUE ）"><l>turtle</l><l>hide</l><list></list></custom-block><custom-block s="%s . %txt ( %mult%anyUE ）"><l>turtle</l><l>shape</l><list><l>"blank"</l></list></custom-block><custom-block s="%s . %txt ( %mult%anyUE ）"><l>turtle</l><l>goto</l><list><l>-90</l><l>90</l></list></custom-block><custom-block s="for %txt in %anyUE : %cs"><l>i</l><custom-block s="range ( %mult%anyUE )"><list><l>3</l></list></custom-block><script><custom-block s="for %txt in %anyUE : %cs"><l>j</l><custom-block s="range ( %mult%anyUE )"><list><l>3</l></list></custom-block><script><custom-block s="%anyUE = %anyUE"><l>thisclone</l><custom-block s="%s . %txt ( %mult%anyUE )"><l>turtle</l><l>clone</l><list></list></custom-block></custom-block><custom-block s="%anyUE = %anyUE"><l>thisclone.order</l><l>order</l></custom-block><custom-block s="%s . %txt ( %mult%anyUE ）"><l>thisclone</l><l>show</l><list></list></custom-block><custom-block s="%s . %txt ( %cmdRing )"><l>thisclone</l><l>onclick</l><block s="reifyScript"><script><custom-block s="cloneOnclick"></custom-block></script><list></list></block></custom-block><custom-block s="%anyUE . %txt ( %mult%anyUE )"><l>grids</l><l>append</l><list><l>thisclone</l></list></custom-block><custom-block s="%anyUE += %anyUE"><l>order</l><l>1</l></custom-block><custom-block s="%s . %txt ( %mult%anyUE ）"><l>turtle</l><l>setx</l><list><custom-block s="%anyUE + %anyUE"><custom-block s="%s . %txt ( %mult%anyUE )"><l>turtle</l><l>xcor</l><list></list></custom-block><l>90</l></custom-block></list></custom-block></script></custom-block><custom-block s="%s . %txt ( %mult%anyUE ）"><l>turtle</l><l>setx</l><list><custom-block s="%anyUE － %anyUE"><custom-block s="%s . %txt ( %mult%anyUE )"><l>turtle</l><l>xcor</l><list></list></custom-block><l>270</l></custom-block></list></custom-block><custom-block s="%s . %txt ( %mult%anyUE ）"><l>turtle</l><l>sety</l><list><custom-block s="%anyUE － %anyUE"><custom-block s="%s . %txt ( %mult%anyUE )"><l>turtle</l><l>ycor</l><list></list></custom-block><l>90</l></custom-block></list></custom-block></script></custom-block></script></scripts></sprite><sprite name="turtle2" idx="2" x="71.46421663442925" y="140.01471022692414" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="0" color="63.75,26.775000000000002,0,1" pen="tip" id="12995"><costumes><list struct="atomic" id="12996"></list></costumes><sounds><list struct="atomic" id="12997"></list></sounds><blocks></blocks><variables><variable name="hh"><l>0</l></variable><variable name="bb"><l>jj</l></variable></variables><scripts><script x="598.4427083333334" y="430.53333333333285"><block var="var"/></script><script x="35" y="617.5333333333334"><block s="doSayFor"><block s="evaluate"><block s="reportJSFunction"><list><l>proc</l></list><l>return proc.context.variables.silentFind("x");</l></block><list></list></block><l>2</l></block></script><script x="25.399999999999995" y="23.40000000000009"><custom-block s="def %txt : %cmdRing"><l>judge</l><block s="reifyScript"><script><block s="doWarp"><script><custom-block s="%anyUE = %anyUE"><l>winningPattern</l><l>[[0,1,2],[3,4,5],[6,7,8],[0,3,6],[1,4,7],[2,5,8],[0,4,8],[2,4,6]]</l></custom-block><custom-block s="for %txt in %anyUE : %cs"><l>row</l><l>winningPattern</l><script><custom-block s="%anyUE = %anyUE"><l>won</l><l>True</l></custom-block><custom-block s="for %txt in %anyUE : %cs"><l>position</l><l>row</l><script><custom-block s="if %b : %cs"><custom-block s="%anyUE != %anyUE"><l>board[position]</l><custom-block s="parse %txt"><block var="x"/></custom-block></custom-block><script><custom-block s="%anyUE = %anyUE"><l>won</l><l>False</l></custom-block></script></custom-block></script></custom-block><custom-block s="if %b : %cs"><custom-block s="%anyUE == %anyUE"><l>won</l><l>True</l></custom-block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></custom-block></script></custom-block><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block></script><list><l>x</l></list></block></custom-block></script></scripts></sprite><sprite name="alonso" idx="3" x="-189" y="99.82708933717578" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="150.45,0,0,1" pen="tip" id="13068"><costumes><list id="13069"><item><ref mediaID="tictoctoe_pythonblocks_alonso_cst_alonzo"></ref></item></list></costumes><sounds><list struct="atomic" id="13070"></list></sounds><blocks></blocks><variables></variables><scripts><script x="63.333333333333336" y="27.833333333333258"><block s="receiveInteraction"><l><option>clicked</option></l></block><custom-block s="%anyUE = %anyUE"><l>blankgrids</l><l>[]</l></custom-block><custom-block s="for %txt in %anyUE : %cs"><l>i</l><custom-block s="range ( %mult%anyUE )"><list><custom-block s="len ( %anyUE )"><l>board</l></custom-block></list></custom-block><script><custom-block s="if %b : %cs"><custom-block s="%anyUE == %anyUE"><l>board[i]</l><l>""</l></custom-block><script><custom-block s="%anyUE . %txt ( %mult%anyUE )"><l>blankgrids</l><l>append</l><list><l>i</l></list></custom-block></script></custom-block></script></custom-block><custom-block s="%anyUE = %anyUE"><l>i</l><custom-block s="random. %txt ( %mult%anyUE )"><l>choice</l><list><l>blankgrids</l></list></custom-block></custom-block><custom-block s="if %b : %cs else : %cs"><custom-block s="%anyUE == %anyUE"><l>whosturn</l><l>"circle"</l></custom-block><script><custom-block s="%s . %txt ( %mult%anyUE ）"><l>grids[i]</l><l>shape</l><list><l>"O"</l></list></custom-block><custom-block s="%anyUE = %anyUE"><l>board[i]</l><l>"O"</l></custom-block><custom-block s="%anyUE = %anyUE"><l>whosturn</l><l>"cross"</l></custom-block></script><script><custom-block s="%s . %txt ( %mult%anyUE ）"><l>grids[i]</l><l>shape</l><list><l>"X"</l></list></custom-block><custom-block s="%anyUE = %anyUE"><l>board[i]</l><l>"X"</l></custom-block><custom-block s="%anyUE = %anyUE"><l>whosturn</l><l>"circle"</l></custom-block></script></custom-block></script></scripts></sprite><watcher scope="turtle" s="xPosition" style="normal" x="55.42997542997682" y="114.39803911547904" color="74,108,212" hidden="true"/><watcher scope="turtle" s="yPosition" style="normal" x="55.42997542997682" y="149.18919626535623" color="74,108,212" hidden="true"/><watcher scope="turtle2" var="bb" style="normal" x="9.999999999999773" y="10.000000000000028" color="243,118,29" hidden="true"/><watcher var="board" style="normal" x="-170.9999999999991" y="-162.99999999999997" color="243,118,29" hidden="true"/><watcher var="grids" style="normal" x="3" y="12.000000000000007" color="243,118,29" hidden="true"/></sprites></stage><variables><variable name="side"><l>90</l></variable><variable name="board"><list struct="atomic" id="13150">O,X,X,O,O,O,,,X</list></variable><variable name="whosturn"><l>cross</l></variable><variable name="grids"><list struct="atomic" id="13151">0,0,0,0,0,0,0,0,0</list></variable></variables></scene></scenes></project><media name="tictoctoe_pythonblocks" app="Snap! 11.0.0, https://snap.berkeley.edu" version="2"><costume name="blank" center-x="44" center-y="42.875" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFoAAABaCAYAAAA4qEECAAACKUlEQVR4AezcQWrDMBCFYSWYeJVFsvBp2l4zkJ6mF8hFAsnCG0MNrsYqhm6qzcyLwf9CqjBiHv48CGNC9ymlSx5fjBRpcDHoLiO/H4/Ht9Pp9MHwMzBTs82jM+iUL0z3+318PB6J4WdgpmabodMM3TTNvm3bg11g+Am0bXswW6s4Q9uCESsAdKzvUh3ohSJ2AXSs71Id6IUidgF0rO9SHeiFInbxUujYW1tXdaBFzwNooEUCohg6GmiRgCiGjgZaJCCKoaOBFgmIYuhooIMFxOXpaBE40ECLBEQxdDTQIgFRDB0NtEhAFENHAy0SEMXQ0UCLBEQxfztaFLrFGKBFTx1ooEUCohg6GmiRgCiGjgZaJCCKoaOBFgmIYujo7UGL7vhFMXS0Bn4CWgO9A1oDXf67gShr0zF0tObxc0ZrnBNntAiaM1oEzdEhguboEEFzdPxCh//h9S6cuAQAXRzCZ6DDiUsA0MUhfAY6nLgEAF0cwmegw4lLANDFIXwGOpx4DuBbx8wQP/GtI964JPx3dJQdzC4CQLsw1osAXTdy2QG0C2O9CNB1I5cdQLsw1osAXTdy2QG0C2O9CNB1I5cdQLsw1osAXTdy2bFaaJe7W08Rvt6JngVf70TQ/FIJaJWAJoczWuPMD9FFzokzWiU9v0eP4zgNw/CtCt1Kjpmabb7fckb3fb/ruq45n8+J4Wdgpmaboef36FteXPOFz+fzeWX4GZip2eZx+wEAAP//jwRqCAAAAAZJREFUAwBAXLVh69fvtAAAAABJRU5ErkJggg==" mediaID="tictoctoe_pythonblocks_turtle_cst_blank"/><costume name="O" center-x="44" center-y="42.875" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFoAAABaCAYAAAA4qEECAAAKwklEQVR4AeydZYwUyxbHz3AXFncWt+AaJLgnuBMkeLAPuLt8geC2SJCLOwQnSLAQgrsGlwAJbkGCs29+tbf6NTzewvZ0z87MbbKn69Tp7qpz/lNdXXW6ThFPROZ66aBL4iQGcwE6wgtypWTJklVMlSpVZZfswwBMwdZLEQAtXkHUs2fPvr58+VJcsg8DMAVbL9CigA4LC4sXHh6eAIFL9iEQHh6eAGwpUQEN45KzCLhAO4uvUboLtAGFs4wLtLP4GqW7QBtQOMu4QDuLr1G6C7QBhbNMnALtrGmBVboLtJ9+DxfofyvQXv+AzJ07V/r37y/t2rWT2rVrS8mSJSV79uySOHFiRfDIOMc1XDt//nzhXj/hFutqAqJFX758WcaNGydlypSR9OnTS/fu3WX69OmycuVK2b17t5w9e1bu378vHz58UASPjHNcw7Vdu3ZV95YrV04mTJggV65ciTUYTt4Qp0DTcnPlyiVFihSRESNGyMmTJyUqKsqyvdx7/PhxGTZsmBQqVEjy5Mmjng7LBdp4Y5wAvWbNGgFgWu6dO3f+xxxa5ahRoxRImzZtkiNHjsitW7dUa6ZVwyPjHD/WyJEjhXt+LojrqCNv3ryyfv36n0/7Ne9XoAGnVKlS0rp1azEDnCZNGiVbtWqV8ocfPXpURo8eLXQHTZo0kfLly6sfJmHChALxIyHjHNeMGTNGuOfFixequ6H81KlTG0DevHlTWrRoIdSNDsYJPzJ+Afrbt2/St29fqVixopw+fdowL23atDJz5kx59OiRADIAeb/wGOdjywBumzZtVFmPHz+WyMhI4UfU5VA3OgwcOFC+f/+uxX5JHQf69evXUq1aNZkxY4ZhUKJEiVQ/Sqvu1auXxI8f3zhnF0OZffr0UU/O4MGD1ZMg//ybOnWq1KpVS968efOPxPnEUaCvX78uxYoVk0OHDilL4sWLJx07dlT9LaMM72ceJXfykDx5cpk4caLcuHFDDRc9Ho+qbt++fWrYeO3aNZV3+uAY0Ay9GOveu3dP2UAr3rVrlyxevFgyZcqkZP48ZM2aVZYvXy7btm2T8PBwEW/lvCzpt3fu3OnNOfvnCNAAymTi/fv3SvsUKVLI/v37pWbNmiofl4f69eursXnSpEmVGu/evZN69eopmRI4dLAdaN7wzZs3N9SNiIgQxra/Gn4ZF/mZqVKlihqloJuuulmzZqp70Xm7U1uBfvXqlXrJ6JacMmVKZVD+/Pnt1tvn8pgkMdRDRwqjZdetW1ewgbzdZBvQX758UY/g3bt3lY689en7GPMqQQAecufOLdu3b5e//vpLaXf79m1p0KCBMBxVAhsPtgHdoUMHOXbsmKHa0qVLfzlbMy4IEKZChQoyb948QxtaOZMgQ2ATYwvQtIrVq1cbKvXr10/N9AxBgDNdunQRxvNazYULF9r+crQFaGZaWskaNWrIlClTdDZoUjyA1bwTK63wkCFDNGtL6jPQtGQmJmiDHwKHERMT8sFE9NO4ARIkiF4Zd+HCBVsdUT4BzUsDz5kGtHfv3j/4FrQ8WNKMGTNKjx49DHWHDh1qm0/EJ6AXLFggepSRJEkSGT58uKFksDLYwCwW/fHF8FKH95V8AhpfsFaAz0nMAHU+WFM8ijyZWv85c+Zo1qf0R6BjUdTDhw/l4sWLxh3dunUz+GBnzECfOXPGlm+RloHeunWrgSeOGfo3QxDkDE6vYl6vozbDbKuWxTa1DDRjZ11Zo0aNNBsyqdkms61WDbQE9OfPnwV/rq7UrJSWBXtqtglbP3365JNJloDG1wzY1JwjRw4pXLgwbEhR8eLFDb85TrIDBw74ZJ8loM+fP29UyloMIxNiTNmyZQ2LzDYbwlgwloB+/vy5UUXmzJkNPtQYs21mm63Y6QIdA2qMPvTpOAfarIxWKlRSt0X76Zd0gfYT0OanNU66DlyK2laPJ3qdhM5bTwPvTu0ytUMzSy/DDBkyGHU/efLE4EONYVmZtslss5bFIo2yBDRrmHUlLtAaiRhTjwt0DPjY2KKjdzeIoa5fnjI/RqHcos22mW3+JSi/EbotOgaAbGzR1vpoHC5aP9Ycaz7U0lOnThkmmW02hH/OWOujcSTpz1YnTpxQC8n/vM7guJKApHPnzill+bzFyliVsXiw1HV4PB61dErXuXHjRs2GTGq2iWViPhpmreugUhYEkkKbN28mCSkiEEkbZLZVy2KZWus6qITKPZ7oWeHBgweFQB3koUBs4MUaPGxhFoyt8L6Qpa6DCumjiYyCZyHN7NmzYYOVftB72rRpRrxjpUqVVLTuDxdYyFgGmrp69uxJomjy5Mny9OlTxQfzgWUU5rWD5pVLvtjlE9AtW7aUEiVKqPr5rkb0q8oE8YGVSvpDLEM6IgHsMMcnoFFg1qxZJIoIBCKuW2WC8ED8OAFFWnW7VilRns9A008TgENhBEkSoUrrJh9MhM60XuLJ0ZuoXPPHWWS+kM9AUzkBknqp7tWrVwUlAZ1zwUDois7ojr6MNCZNmgRrG9kCNEHtBE1qrfbu3SvmxelaHqgpL3V01vrRcIhv0Xk7UluARhGAJSoWHmIF/ZIlS2ADmhiWmlfFYgOhzXYrbRvQKMbLsGrVqrCKOnXqJIE8a0Q3c+xK9erVVWSvUt7mg61AoxsrL9mQBB5q2rSpsCMMfCDR2LFjBd20Tuhs9m9ouU2pdV/H/1OAIHdClPF4cQ1vcXaEadu2Ldk4p48fPwpbTRASgm4olC5dOtmzZ4+gO3kHyLqvIyZlCOJkzyNzxCyBOKVLl47T2SOzPoajBDhp/dGRxeYs1tQyJ9KYug6f6mM3ARznZocM+QIFCkhkZKQQaetTBbG4mZWvTKtZ9ap9zNyObuiEruSdJMeARml2EGAR96BBg8gqwjNGwGe+fPlk7dq1hvNGnbT5QNfALmIMP9HBHOfNZinoho42V/vL4hwFmho9Ho8w+MfgsLAwRIqI5mrVqpXylWiXpDph0wHXbdGiRdVmKHrPEPH+Y1EMujDu93ii3bxeseN/jgOtLeAFxMwLcD2e/xrIumP2OaKFM37lRcpOYPq+P025Z8eOHSrUmBbMMNPsd2Hmig7sOEP6p+XadZ3fgEZhZlu8iIjmaty4MSKD2IqHjazoN9mxsXLlyoJ3EPDHjx8vixYtUvHZPO7wyDjHNdpnjM+FCQh7hhgFexmGcZcuXVI7iOXMmdMr8f+fX4HW5vFSYrLAyITYcS03p+zDtG7dOrWLGK5LAuPZ1Ybvd/DI+GG45vDhw+ZbDZ7rqWPDhg1SsGBBQx4XTJwArQ3F38v4lT6UVsoj7ctCFULwGK8zQ33w4IHQDVGHri8u0zgFWhueLVs2YbrOS4o98Ohbt2zZImznQBdBVC6bvdapU0eg9u3by4ABA4RzXMNslHsYJ69YsULtRJYlSxZdfECkAQH0z0iwryjhZ507d5ahQ4cK3jQc8uxoAy1btkxtVcE5rmnYsKHai/TncgIpH5BABxJAduniAm0Xkr8pJ2CB/o3ewXbafu9dsCHgJ32d8d75SfmgqsbtOvz0c7lA+wdot4/2D87i9tF+AtpasJC/lAulelQf/fXr1yjvR8svoWRYINgCpmDr1SW6j3779q0nIiIijP+MwKXUYhcGYAq2XqBVH33Wy/ztFSzwflP726VXtmEApmDrpbP/AQAA//82LkJZAAAABklEQVQDAMPCbJ0HR6P6AAAAAElFTkSuQmCC" mediaID="tictoctoe_pythonblocks_turtle_cst_O"/><costume name="X" center-x="44" center-y="42.875" image="data:image/png;base64,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" mediaID="tictoctoe_pythonblocks_turtle_cst_X"/><costume name="turtle07" center-x="35" center-y="45" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEYAAABaCAYAAAAFOiBkAAAQAElEQVR4AeycCbjWY/rH7/dUVLYUKluZkuxlGVtjDSFJMiiUZLLXyD5mkDXZJpRlaKFQRCZLQmkx2ZdGEm2WFipLitLy/3ye8Z55z+m0nHO6/uada7o8/bZnue/vc+/Pm4L4L/jTrVu3Pa+44oqjBw0atN66Yue/Apj33nvvhIEDB/b8/vvvG/wPmF8Q6Nmz58bz58/fd8aMGfWee+65i66++up1IjV5LzFfffXVHoDSsHr16jF27NhT582bd9gvmJXrkvfAfPnll3uhQjUrV64cy5cvr/SPf/zjj/ypUi5UGJzXwKg2s2bNarR06dKCTCYT6623XnzxxRcHLlmypBm8leu/gnKN/pUHz507t/Y333xTv6CgIDKZTGqAsv7UqVPbjhw5smJ5yCsoz+Bfe+yUKVO2XLBgQe2KFf+NgfeTJ0/eH5Xauzz05TUw9erVq7Fw4cLNVqxYUYiBwHz33XebffTRR+UywnkNzOLFi2vSqgpGFhzVivtK06dP3+/iiy/eoBCxUt7kNTDYko3kN5PJeClsmUwmcNsNMcbbFb4s5U1eAwPz62cymWR0c/muUKFC/PDDD9WJcXbOfV+a+7wGRkYzmYyXIi2TycRPP/20IcDtUORDKR7yGhiCuqXYk5XYVWII9ioCTj2+r4zcSiNWfvGfD8zKNBe+2XTTTX/2Aea9FDY8VWCUY/bs2TXPOOOM9Qs/lOIm34FZLK/FgalVq1YAWhARb7QBf+xT2pbXwGy88cZLZDgLzLJly0J3ffnll8fpp58ePFdt2LDhxvYpbctrYLAlYLIieaVMJhM8m0jG008/Ha+88orPFYiMK0UZ/uQ1MGTVFTOZf9lWEErse50wYULMnDkzMM6x/vplMjGR18AQ+lfB+ySJERVBQX2iS5cuceuttwqMXivZIb+XpuUtMICQoTi1hd4nl2EMbowaNSrIruPHH39cQEL5be73tb3PW2Auu+yyDb/++uu6mUymiMRssskm8cknn0Tfvn21MXO23HLLhWsLRm6/IsCMGDFik6OOOuqCHXfcsdcpp5xy7tlnn71Vbuf/pHtilerEKdtLUybzL3CUnlatWiXj27p162XYl8nXXHPNUvuUthUCwwRVBwwY0PWtt966kxzjnFdfffWu8ePHP37YYYe1Lu2kxfsfccQRG0Bw7VtuuaURbvSQQw899IhDDjnkyJNPPvkwjj72JgjbpkWLFikhLD52Vc+46m3nz5+/g54ok/kXMES6MWfOnGR4M5nMgtq1a7+zqvFrel8IDNKyGaA0Q0cLqlSpYgxQ8Pnnnx8wceLEe88888wrAO7f1aA1zcr3448/fkfAaHP44Yd3x0M89tprrw2joj/4mWeeefj111/v98Ybb/Slqt//3nvvfXz48OHDKDo9CVg9AeusAw88sDHrFdLGdEX+u++++yrNnj37EICpZskBELQnAVjBXHHiiSfGP//5z2lNmjQZX2RgKR4KF99hhx2WEiT+4CJaehdEFAWoBgxcNXr06IvXNO+NN95Y49hjjz1z5513HgDjQ1988cXeSF1XdrL5TjvttEfjxo3r832rDh061GrXrl0twNtyr7322m6bbbbZDQ9zOFW38//+97/fQdX/qWHDhg1u3rz5WW3atNm0+LqVKlXa5p133mkhrdybSYfR7k033RR//vOf42f+bL311s9ccMEFM6OMfwqBIWJsiDHbSdF0Lqx+2HxGd6u+//77F3Xt2rWV34q3U089tXbTpk0vQRVHwNxd7GSb+vXrb3/OOedsjNuswClhID1B9T5gNhYtWpQMZo0aNQJgAnuWGEKtMvTbgA2pgwFthWT1BNgRrVu37gSYSdWUJGg5ge+Nq1atmkjB+wRABCoaSGjsvffek3fZZZcB6WMZ/0rA7LnnnpVQmUPY2ZrGAUqMYXX37t0DKQqlh/k3xwVeCGFbcJ/++8Mf/rAZTJ07atSol95+++2b6dcYVaiC5ET79u2VtnjsscfCZ5gO1CnoF3369AmOU+Phhx+Ou+++O3r06BF//etfA6mM7bffPq666qqg+hYwV5kgbk/UoxcSMqRz5877TJo06QDU/rzKlSsXsF6KdFUh6E/rsNai7bbb7pbrr7/+k0RkGf9KwFC3qIDBraZoZqVks802i8033zxNi6dKDLCTe6EiRwNORd4dStj9COH3PfTbCekoQKICg5cYv+iiiwL7EexuEnUkUhEPbFgCej2OOmyqgosgZTFu3LhQHf7yl78ExyKBUY5LL700dt1114IPP/yw6RNPPDGU633QWkdpcQOl2TnwUtGvX79FzH9zr169+jtneVoCht1dsttuu33kQhKLiobEoaOBekXdunWj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" mediaID="tictoctoe_pythonblocks_turtle_cst_turtle07"/><costume name="alonzo" center-x="45" center-y="60" image="data:image/png;base64,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" mediaID="tictoctoe_pythonblocks_alonso_cst_alonzo"/></media></snapdata>