<snapdata remixID="9322782"><project name="M7L1A3" app="Snap! 5.4, http://snap.berkeley.edu" version="1"><notes></notes><thumbnail>data:image/png;base64,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</thumbnail><stage name="Stage" 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" codify="false" inheritance="true" sublistIDs="false" scheduled="false" id="1"><pentrails>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAAAXNSR0IArs4c6QAAC99JREFUeAHt0DEBAAAAwqD1T20MH4hAYcCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBj4DAyN/gABHhb3AgAAAABJRU5ErkJggg==</pentrails><costumes><list struct="atomic" id="2"></list></costumes><sounds><list struct="atomic" id="3"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites><sprite name="Sprite" idx="1" x="125" y="60" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="0" color="80,80,80,1" pen="tip" id="8"><costumes><list struct="atomic" id="9"></list></costumes><sounds><list struct="atomic" id="10"></list></sounds><blocks></blocks><variables></variables><scripts><script x="224.6416025625" y="91.000001"><custom-block s="are numbers of %l distinct?"><l/></custom-block></script><script x="60" y="29"><custom-block s="duplicates in %l"><block s="reportNewList"><list><l>3</l><l>10</l><l>7</l><l>3</l><l>20</l><l>12</l><l>7</l></list></block></custom-block></script><script x="315" y="156"><custom-block s="are the numbers of %n distinct?"><block s="reportNewList"><list><l>20</l><l>12</l><l>3</l><l>100</l><l>50</l><l>12</l></list></block></custom-block></script></scripts></sprite><watcher var="new list" style="normal" x="7" y="-2" color="243,118,29" extX="122" extY="361"/></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="are numbers of %&apos;list&apos; distinct?" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doDeclareVariables"><list><l>a</l></list></block><block s="doSetVar"><l>new list</l><block s="reportNewList"><list><l>3</l><l>7</l></list></block></block><block s="doSetVar"><l>a</l><l>0</l></block><custom-block s="for each %upvar of %l %cs"><l>item</l><block var="list"/><script><block s="doAddToList"><block var="item"/><block var="new list"/></block></script></custom-block><custom-block s="for each %upvar of %l %cs"><l>item</l><block var="new list"/><script><block s="doInsertInList"><block var="item"/><l>1</l><block var="new list"/></block><block s="doDeleteFromList"><block s="reportSum"><block var="item"/><l>1</l></block><block var="new list"/></block><custom-block s="for each %upvar of %l %cs"><l>item</l><block s="reportCDR"><block var="new list"/></block><script><block s="doIf"><block s="reportEquals"><block s="reportListItem"><l>1</l><block var="new list"/></block><block var="item"/></block><script><block s="doChangeVar"><l>a</l><l>1</l></block></script></block></script></custom-block></script></custom-block><block s="doReport"><block s="reportEquals"><block var="a"/><block s="reportListItem"><l>1</l><block var="new list"/></block></block></block></script></block-definition><block-definition s="label %&apos;text&apos; of size %&apos;size&apos;" type="command" category="pen"><comment x="0" y="0" w="90" collapsed="false">LABEL will stamp text on the stage at the given font size. The direction of the text is the direction the sprite is facing, and color will match the pen color.</comment><header></header><code></code><translations>de:drucke _ in Größe _&#xD;ca:etiqueta _ de mida _&#xD;es:etiqueta _ de tamaño _&#xD;fr:étiquette _ d&apos;une taille de _&#xD;</translations><inputs><input type="%txt">Hello!</input><input type="%n">12</input></inputs><script><block s="doRun"><block s="reportJSFunction"><list><l>text</l><l>size</l><l>process</l></list><l>var stage = this.parentThatIsA(StageMorph);&#xD;&#xD;if (this == stage) {&#xD;    throw new Error(&#xD;     &apos;LABEL cannot be used from the stage because the stage does not have a postion.\n&apos;&#xD;     + &apos;Use LABEL from a sprite to draw text.&apos;);&#xD;}&#xD;&#xD;if (typeof text !== &apos;string&apos; &amp;&amp; typeof text !== &apos;number&apos;) {&#xD;    throw new Error(&apos;LABEL can only draw text or numbers, not a &apos; + process.reportTypeOf(text)); &#xD;}&#xD;&#xD;var context = stage.penTrails().getContext(&apos;2d&apos;),&#xD;    rotation = radians(this.direction() - 90),&#xD;    trans = new Point(&#xD;      this.center().x - stage.left(),&#xD;      this.center().y - stage.top()&#xD;    ),&#xD;    isWarped = this.Warped,&#xD;    len,&#xD;    pos;&#xD;&#xD;if (isWarped) {endWarp(); }&#xD;context.save();&#xD;context.font = size + &apos;px monospace&apos;;&#xD;context.textAlign = &apos;left&apos;;&#xD;context.textBaseline = &apos;alphabetic&apos;;&#xD;context.fillStyle = this.color.toString();&#xD;len = context.measureText(text).width;&#xD;trans = trans.multiplyBy(1 / stage.scale);&#xD;context.translate(trans.x, trans.y);&#xD;context.rotate(rotation);&#xD;context.fillText(text, 0, 0);&#xD;context.translate(-trans.x, -trans.y);&#xD;context.restore();&#xD;pos = new Point(&#xD;  len * Math.sin(radians(this.direction())),&#xD;  len * Math.cos(radians(this.direction())));&#xD;pos = pos.add(new Point(this.xPosition(), this.yPosition()));&#xD;this.gotoXY(pos.x, pos.y, false);&#xD;this.changed();&#xD;if (isWarped) {this.startWarp(); }&#xD;stage.changed();&#xD;</l></block><list><block var="text"/><block var="size"/></list></block></script></block-definition><block-definition s="empty? %&apos;data&apos;" type="predicate" category="lists"><header></header><code></code><translations>de:ist _ leer?&#xD;ca:_ buida?&#xD;es:_ vacía?&#xD;fr:_ vide?&#xD;</translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportEquals"><block var="data"/><block s="reportNewList"><list></list></block></block></block></script></block-definition><block-definition s="keep items such that %&apos;pred&apos; from %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations>de:behalte Elemente, die _ aus _&#xD;ca:manté els elements on _ de _&#xD;es:mantener los elementos donde _ de _&#xD;fr:garder les items tels que _ de _&#xD;</translations><inputs><input type="%predRing"></input><input type="%l"></input></inputs><script><block s="doIf"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doIfElse"><block s="evaluate"><block var="pred"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><script><block s="doReport"><block s="reportCONS"><block s="reportListItem"><l>1</l><block var="data"/></block><custom-block s="keep items such that %predRing from %l"><block var="pred"/><block s="reportCDR"><block var="data"/></block></custom-block></block></block></script><script><block s="doReport"><custom-block s="keep items such that %predRing from %l"><block var="pred"/><block s="reportCDR"><block var="data"/></block></custom-block></block></script></block></script></block-definition><block-definition s="combine with %&apos;function&apos; items of %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations>de:kombiniere mit _ die Elemente von _&#xD;ca:combina amb _ els elements de _&#xD;es:combinar con _ los elementos de _&#xD;fr:combine avec _ les items de _&#xD;</translations><inputs><input type="%repRing"></input><input type="%l"></input></inputs><script><block s="doIf"><custom-block s="empty? %l"><block s="reportCDR"><block var="data"/></block></custom-block><script><block s="doReport"><block s="reportListItem"><l>1</l><block var="data"/></block></block></script></block><block s="doReport"><block s="evaluate"><block var="function"/><list><block s="reportListItem"><l>1</l><block var="data"/></block><custom-block s="combine with %repRing items of %l"><block var="function"/><block s="reportCDR"><block var="data"/></block></custom-block></list></block></block></script></block-definition><block-definition s="if %&apos;test&apos; then %&apos;true&apos; else %&apos;false&apos;" type="reporter" category="control"><header></header><code></code><translations>de:wenn _ dann _ sonst _&#xD;ca:si _ llavors _ si no _&#xD;es:si _ entonces _ sino _&#xD;fr:si _ alors _ sinon _&#xD;</translations><inputs><input type="%b"></input><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doIfElse"><block var="test"/><script><block s="doReport"><block s="evaluate"><block var="true"/><list></list></block></block></script><script><block s="doReport"><block s="evaluate"><block var="false"/><list></list></block></block></script></block></script></block-definition><block-definition s="for %&apos;i&apos; = %&apos;start&apos; to %&apos;end&apos; %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations>de:für _ = _ bis _ _&#xD;ca:per _ = _ fins _ _&#xD;es:para _ = _ hasta _ _&#xD;fr:pour _ allant de _ à _ _&#xD;</translations><inputs><input type="%upvar"></input><input type="%n">1</input><input type="%n">10</input><input type="%cs"></input></inputs><script><block s="doDeclareVariables"><list><l>step</l><l>tester</l></list></block><block s="doIfElse"><block s="reportGreaterThan"><block var="start"/><block var="end"/></block><script><block s="doSetVar"><l>step</l><l>-1</l></block><block s="doSetVar"><l>tester</l><block s="reifyReporter"><autolambda><block s="reportLessThan"><block var="i"/><block var="end"/></block></autolambda><list></list></block></block></script><script><block s="doSetVar"><l>step</l><l>1</l></block><block s="doSetVar"><l>tester</l><block s="reifyReporter"><autolambda><block s="reportGreaterThan"><block var="i"/><block var="end"/></block></autolambda><list></list></block></block></script></block><block s="doSetVar"><l>i</l><block var="start"/></block><block s="doUntil"><block s="evaluate"><block var="tester"/><list></list></block><script><block s="doRun"><block var="action"/><list></list></block><block s="doChangeVar"><l>i</l><block var="step"/></block></script></block></script></block-definition><block-definition s="join words %&apos;words&apos;" type="reporter" category="operators"><header></header><code></code><translations>de:füge Wörter zusammen _&#xD;ca:uneix les paraules _&#xD;es:unir las palabras _&#xD;fr:fusionne les mots _&#xD;</translations><inputs><input type="%mult%txt"></input></inputs><script><block s="doIf"><custom-block s="empty? %l"><block s="reportCDR"><block var="words"/></block></custom-block><script><block s="doReport"><block s="reportListItem"><l>1</l><block var="words"/></block></block></script></block><block s="doIf"><block s="reportEquals"><l></l><block s="reportListItem"><l>1</l><block var="words"/></block></block><script><block s="doReport"><custom-block s="join words %mult%txt"><block s="reportCDR"><block var="words"/></block></custom-block></block></script></block><block s="doIf"><block s="reportEquals"><l></l><block s="reportListItem"><l>2</l><block var="words"/></block></block><script><block s="doReport"><custom-block s="join words %mult%txt"><block s="reportCONS"><block s="reportListItem"><l>1</l><block var="words"/></block><block s="reportCDR"><block s="reportCDR"><block var="words"/></block></block></block></custom-block></block></script></block><block s="doReport"><block s="reportJoinWords"><list><block s="reportListItem"><l>1</l><block var="words"/></block><l> </l><custom-block s="join words %mult%txt"><block s="reportCDR"><block var="words"/></block></custom-block></list></block></block></script></block-definition><block-definition s="list $arrowRight sentence %&apos;data&apos;" type="reporter" category="operators"><header></header><code></code><translations>de:Liste $arrowRight Satz _&#xD;ca:llista $arrowRight frase _&#xD;es:lista $arrowRight frase _&#xD;fr:liste $arrowRight phrase _&#xD;</translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><custom-block s="join words %mult%txt"><block var="data"/></custom-block></block></script></block-definition><block-definition s="sentence $arrowRight list %&apos;text&apos;" type="reporter" category="operators"><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;</translations><inputs><input type="%txt"></input></inputs><script><block s="doReport"><block s="reportTextSplit"><block var="text"/><l><option>whitespace</option></l></block></block></script></block-definition><block-definition s="catch %&apos;tag&apos; %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations>de:fange _ _&#xD;ca:agafa _ _&#xD;es:atrapar _ _&#xD;fr:attrape _ _&#xD;</translations><inputs><input type="%upvar"></input><input type="%cs"></input></inputs><script><block s="doCallCC"><block s="reifyScript"><script><block s="doSetVar"><l>tag</l><block var="cont"/></block><block s="doRun"><block var="action"/><list></list></block></script><list><l>cont</l></list></block></block><custom-block s="ignore %s"><l>3</l></custom-block></script></block-definition><block-definition s="throw %&apos;cont&apos;" type="command" category="control"><header></header><code></code><translations>de:wirf _&#xD;ca:llança _&#xD;es:lanzar _&#xD;fr:lance _&#xD;</translations><inputs><input type="%s">catchtag</input></inputs><script><block s="doRun"><block var="cont"/><list></list></block></script></block-definition><block-definition s="catch %&apos;tag&apos; %&apos;value&apos;" type="reporter" category="control"><header></header><code></code><translations>de:fange _ _&#xD;ca:agafa _ _&#xD;es:atrapar _ _&#xD;fr:attrape _ _&#xD;</translations><inputs><input type="%upvar"></input><input type="%anyUE"></input></inputs><script><block s="doCallCC"><block s="reifyScript"><script><block s="doSetVar"><l>tag</l><block var="cont"/></block><block s="doReport"><block s="evaluate"><block var="value"/><list></list></block></block></script><list><l>cont</l></list></block></block></script></block-definition><block-definition s="throw %&apos;tag&apos; %&apos;value&apos;" type="command" category="control"><header></header><code></code><translations>de:wirf _ _&#xD;ca:llança _ _&#xD;es:lanzar _ _&#xD;fr:lance _ _&#xD;</translations><inputs><input type="%s">catchtag</input><input type="%s"></input></inputs><script><block s="doRun"><block var="tag"/><list><block var="value"/></list></block></script></block-definition><block-definition s="for each %&apos;item&apos; of %&apos;data&apos; %&apos;action&apos;" type="command" category="lists"><header></header><code></code><translations>de:für jedes _ von _ _&#xD;ca:per cada _ de _ _&#xD;es:para cada _ de _ _&#xD;fr:pour chaque _ de _ _&#xD;</translations><inputs><input type="%upvar"></input><input type="%l"></input><input type="%cs"></input></inputs><script><block s="doUntil"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doSetVar"><l>item</l><block s="reportListItem"><l>1</l><block var="data"/></block></block><block s="doRun"><block var="action"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><block s="doSetVar"><l>data</l><block s="reportCDR"><block var="data"/></block></block></script></block></script></block-definition><block-definition s="if %&apos;test&apos; do %&apos;action&apos; and pause all $pause-1-255-220-0" type="command" category="control"><header></header><code></code><translations>de:falls _ dann _ und pause $pause-1-255-220-0&#xD;ca:si _ fes _ i atura-ho tot $pause-1-255-220-0&#xD;es:si _ haz _ y páralo todo $pause-1-255-220-0&#xD;fr:si _ faire _ et mettre tout en pause $pause-1-255-220-0&#xD;</translations><inputs><input type="%boolUE"></input><input type="%cs"></input></inputs><script><block s="doDeclareVariables"><list><l>breakpoint</l></list></block><block s="doIf"><block s="evaluate"><block var="test"/><list></list></block><script><block s="doSetVar"><l>breakpoint</l><block var="test"/></block><block s="doShowVar"><l>breakpoint</l></block><block s="doRun"><block var="action"/><list></list></block><block s="doPauseAll"></block><block s="doHideVar"><l></l></block></script></block></script></block-definition><block-definition s="word $arrowRight list %&apos;word&apos;" type="reporter" category="operators"><header></header><code></code><translations>de:Wort $arrowRight Liste _&#xD;ca:paraula $arrowRight llista _&#xD;es:palabra $arrowRight lista _&#xD;fr:mot $arrowRight liste _&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doReport"><block s="reportTextSplit"><block var="word"/><l><option>letter</option></l></block></block></script></block-definition><block-definition s="ignore %&apos;x&apos;" type="command" category="control"><header></header><code></code><translations>de:ignoriere _&#xD;ca:ignora _&#xD;es:ignorar _&#xD;fr:ignore _&#xD;</translations><inputs><input type="%s"></input></inputs></block-definition><block-definition s="list $arrowRight word %&apos;list&apos;" type="reporter" category="operators"><header></header><code></code><translations>de:Liste $arrowRight Wort _&#xD;ca:llista $arrowRight paraula _&#xD;es:lista $arrowRight palabra _&#xD;fr:liste $arrowRight mot _&#xD;</translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportJoinWords"><block var="list"/></block></block></script></block-definition><block-definition s="%&apos;x&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block var="x"/></block></script></block-definition><block-definition s="numbers from %&apos;from&apos; to %&apos;to&apos;" type="reporter" category="lists"><header></header><code></code><translations>de:Zahlen von _ bis _&#xD;ca:nombres des de _ a _&#xD;es:números de _ a _&#xD;fr:nombres de _ à _&#xD;</translations><inputs><input type="%n">1</input><input type="%n">10</input></inputs><script><block s="doIf"><block s="reportGreaterThan"><block var="from"/><block var="to"/></block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doReport"><block s="reportCONS"><block var="from"/><custom-block s="numbers from %n to %n"><block s="reportSum"><block var="from"/><l>1</l></block><block var="to"/></custom-block></block></block></script></block-definition><block-definition s="map %&apos;func&apos; over %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations>de:wende _ an auf _&#xD;ca:mapeja _ sobre _&#xD;es:mapear _ sobre _&#xD;fr:appliquer _ à _&#xD;</translations><inputs><input type="%repRing"></input><input type="%l"></input></inputs><script><block s="doIf"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doReport"><block var="data"/></block></script></block><block s="doReport"><block s="reportCONS"><block s="evaluate"><block var="func"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><custom-block s="map %repRing over %l"><block var="func"/><block s="reportCDR"><block var="data"/></block></custom-block></block></block></script></block-definition><block-definition s="duplicates in %&apos;acdsafv&apos;" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><custom-block s="for each %upvar of %l %cs"><l>item</l><block var="acdsafv"/><script><block s="doAddToList"><block var="item"/><block var="new list"/></block></script></custom-block><block s="doShowVar"><l>new list</l></block></script></block-definition><block-definition s="are the numbers of %&apos;e&apos; distinct?" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%n"></input></inputs><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block-definition></blocks><variables><variable name="new list"><list struct="atomic" id="576">3,10,7,3,20,12,3,10,7,3,20,12,7,3,10,7,3,20,12,7</list></variable></variables></project><media name="M7L1A3" app="Snap! 5.4, http://snap.berkeley.edu" version="1"></media></snapdata>