<snapdata remixID="9171724"><project name="Caesar U4" 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="Caesar Cipther" idx="1" x="31.186335403725934" y="29.44099378881998" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="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="20" y="20"><block s="receiveMessage"><l>Encoding</l></block><block s="doAsk"><l>What is your plaintext?</l></block><block s="doSetVar"><l>PlainText</l><block s="getLastAnswer"></block></block><block s="doAsk"><l>What is your shift value?</l></block><block s="doSetVar"><l>Shift Value</l><block s="getLastAnswer"></block></block><block s="doSetVar"><l>Cipther Text</l><custom-block s="Caesar cipther message: %s shift: %s"><block var="PlainText"/><block var="Shift Value"/></custom-block></block></script><script x="20" y="199"><block s="receiveMessage"><l>Decoding</l></block><block s="doAsk"><l>What is the cipther text you are decoding?</l></block><block s="doSetVar"><l>PlainText</l><block s="getLastAnswer"></block></block><block s="doSetVar"><l>Cipther Text</l><custom-block s="Caesar cipther message: %s shift: %s"><block var="PlainText"/><block s="reportProduct"><l>-1</l><block var="Shift Value"/></block></custom-block></block></script><script x="20" y="339"><block s="receiveGo"></block><block s="doBroadcast"><l>Show</l></block></script></scripts></sprite><sprite name="Encoding" idx="2" x="-103.00000000000023" y="7.6273291925465685" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="201.45000000000002,181.30499999999995,0,1" pen="tip" id="54"><costumes><list id="55"><item><costume name="button_encoding " center-x="65" center-y="20" image="data:image/png;base64,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" id="56"/></item></list></costumes><sounds><list struct="atomic" id="57"></list></sounds><blocks></blocks><variables></variables><scripts><script x="20" y="20"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="doBroadcast"><l>Encoding</l></block><block s="doBroadcast"><l>Andy&apos;s coming</l></block><block s="hide"></block></script><script x="20" y="134"><block s="receiveMessage"><l>Andy&apos;s coming</l></block><block s="hide"></block></script><script x="20" y="204"><block s="receiveMessage"><l>Show</l></block><block s="show"></block></script></scripts></sprite><sprite name="Decoding" idx="3" x="95.00000000000023" y="4.627329192546739" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="201.45000000000002,181.30499999999995,0,1" pen="tip" id="74"><costumes><list id="75"><item><costume name="button_decoding " center-x="66" center-y="20" image="data:image/png;base64,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" id="76"/></item></list></costumes><sounds><list struct="atomic" id="77"></list></sounds><blocks></blocks><variables></variables><scripts><script x="20" y="20"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="doBroadcast"><l>Decoding</l></block><block s="doBroadcast"><l>Andy&apos;s coming</l></block><block s="hide"></block></script><script x="20" y="134"><block s="receiveMessage"><l>Andy&apos;s coming</l></block><block s="hide"></block></script><script x="20" y="204"><block s="receiveMessage"><l>Show</l></block><block s="show"></block></script></scripts></sprite><watcher var="Shift Value" style="normal" x="6.7083333333332575" y="18.78334138333333" color="243,118,29"/><watcher var="Cipther Text" style="normal" x="6.7083333333332575" y="60.37501073333337" color="243,118,29"/><watcher var="PlainText" style="normal" x="8.36666666666747" y="101.65000536666645" color="243,118,29"/></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="Decode One Character %&apos;c&apos; %&apos;shift&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%n"></input></inputs><script><block s="doReport"><block s="reportUnicodeAsLetter"><block s="reportDifference"><block s="reportUnicode"><block var="c"/></block><block var="shift"/></block></block></block></script></block-definition><block-definition s="Decode %&apos;text&apos; %&apos;shift&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%n"></input></inputs><script><block s="doDeclareVariables"><list><l>Decoded Text</l></list></block><block s="doSetVar"><l>Decoded Text</l><l></l></block><custom-block s="for %upvar = %n to %n %cs"><l>i</l><l>1</l><block s="reportStringSize"><block var="text"/></block><script><block s="doSetVar"><l>Decoded Text</l><block s="reportJoinWords"><list><block var="Decoded Text"/><custom-block s="Decode One Character %s %n"><block s="reportLetter"><block var="i"/><block var="text"/></block><block var="shift"/></custom-block></list></block></block></script></custom-block><block s="doReport"><block var="Decoded Text"/></block></script></block-definition><block-definition s="Encode One Character %&apos;c&apos; %&apos;shift&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%n"></input></inputs><script><block s="doDeclareVariables"><list><l>Num</l></list></block><block s="doSetVar"><l>Num</l><block s="reportUnicode"><block var="c"/></block></block><block s="doReport"><block s="reportUnicodeAsLetter"><block s="reportSum"><block s="reportUnicode"><block var="c"/></block><block var="shift"/></block></block></block></script></block-definition><block-definition s="Encode %&apos;text&apos; %&apos;shift&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%n"></input></inputs><script><block s="doDeclareVariables"><list><l>Encoded Text</l></list></block><block s="doSetVar"><l>Encoded Text</l><l></l></block><custom-block s="for %upvar = %n to %n %cs"><l>i</l><l>1</l><block s="reportStringSize"><block var="text"/></block><script><block s="doSetVar"><l>Encoded Text</l><block s="reportJoinWords"><list><block var="Encoded Text"/><custom-block s="Encode One Character %s %n"><block s="reportLetter"><block var="i"/><block var="text"/></block><block var="shift"/></custom-block></list></block></block></script></custom-block><block s="doReport"><block var="Encoded Text"/></block></script></block-definition><block-definition s="Capital? %&apos;x&apos;" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block s="reportAnd"><block s="reportGreaterThan"><l>91</l><block s="reportUnicode"><block var="x"/></block></block><block s="reportLessThan"><l>64</l><block s="reportUnicode"><block var="x"/></block></block></block></block></script></block-definition><block-definition s="LowerCase? %&apos;x&apos;" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block s="reportAnd"><block s="reportGreaterThan"><l>123</l><block s="reportUnicode"><block var="x"/></block></block><block s="reportLessThan"><l>96</l><block s="reportUnicode"><block var="x"/></block></block></block></block></script></block-definition><block-definition s="Encode character %&apos;n&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><custom-block s="if %b then %anyUE else %anyUE"><custom-block s="Capital? %s"><block var="n"/></custom-block><block s="reportDifference"><block s="reportUnicode"><block var="n"/></block><l>64</l></block><custom-block s="if %b then %anyUE else %anyUE"><custom-block s="LowerCase? %s"><block var="n"/></custom-block><block s="reportDifference"><block s="reportUnicode"><block var="n"/></block><l>96</l></block><l>0</l></custom-block></custom-block></block></script></block-definition><block-definition s="Encode text %&apos;n&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><custom-block s="map %repRing over %l"><block s="reifyReporter"><autolambda><custom-block s="Encode character %s"><l></l></custom-block></autolambda><list></list></block><block s="reportTextSplit"><block var="n"/><l><option>letter</option></l></block></custom-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="Decode number %&apos;list&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><custom-block s="list $arrowRight word %l"><custom-block s="map %repRing over %l"><block s="reifyReporter"><autolambda><custom-block s="Decode character %n"><l></l></custom-block></autolambda><list></list></block><block var="list"/></custom-block></custom-block></block></script></block-definition><block-definition s="Decode character %&apos;N&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%n"></input></inputs><script><block s="doReport"><block s="reportUnicodeAsLetter"><block s="reportSum"><l>64</l><block var="N"/></block></block></block></script></block-definition><block-definition s="Decode List %&apos;n&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportJoinWords"><list><custom-block s="keep items such that %predRing from %l"><block s="reifyPredicate"><autolambda><block s="reportNot"><block s="reportEquals"><l></l><l>0</l></block></block></autolambda><list></list></block><custom-block s="map %repRing over %l"><block s="reifyReporter"><autolambda><custom-block s="Decode character %n"><l></l></custom-block></autolambda><list></list></block><block var="n"/></custom-block></custom-block></list></block></block></script></block-definition><block-definition s="Caesar shift character %&apos;message&apos; by %&apos;shift&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doDeclareVariables"><list><l>a</l><l>b</l></list></block><block s="doSetVar"><l>a</l><block s="reportNewList"><list></list></block></block><block s="doSetVar"><l>b</l><custom-block s="keep items such that %predRing from %l"><block s="reifyPredicate"><autolambda><block s="reportNot"><block s="reportEquals"><custom-block s="Encode character %s"><l></l></custom-block><l>0</l></block></block></autolambda><list></list></block><block s="reportTextSplit"><block var="message"/><l><option>letter</option></l></block></custom-block></block><block s="doIfElse"><block s="reportNot"><custom-block s="empty? %l"><block var="b"/></custom-block></block><script><custom-block s="for %upvar = %n to %n %cs"><l>i</l><l>1</l><block s="reportListLength"><block var="b"/></block><script><block s="doReplaceInList"><block var="i"/><block var="a"/><custom-block s="Decode character %n"><block s="reportModulus"><block s="reportSum"><custom-block s="Encode character %s"><block s="reportListItem"><block var="i"/><block var="b"/></block></custom-block><block var="shift"/></block><l>26</l></block></custom-block></block></script></custom-block><block s="doReport"><block s="reportJoinWords"><list><block var="a"/></list></block></block></script><script><block s="doReport"><l></l></block></script></block></script></block-definition><block-definition s="Caesar cipther message: %&apos;message&apos; shift: %&apos;shift&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doSetVar"><l>Cipther Text</l><custom-block s="caesar shift final %s %s"><block var="message"/><block var="shift"/></custom-block></block><block s="doIfElse"><custom-block s="empty? %l"><custom-block s="keep item block %s"><block var="message"/></custom-block></custom-block><script><block s="doReport"><custom-block s="caesar shift final %s %s"><block var="message"/><block var="shift"/></custom-block></block></script><script><block s="doReport"><custom-block s="caesar shift final %s %s"><block var="message"/><block var="shift"/></custom-block></block></script></block></script></block-definition><block-definition s="caesar shift final %&apos;message&apos; %&apos;shift&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doReport"><block s="reportJoinWords"><list><custom-block s="map %repRing over %l"><block s="reifyReporter"><autolambda><custom-block s="Decode character %n"><block s="reportModulus"><block s="reportSum"><custom-block s="Encode character %s"><l></l></custom-block><block var="shift"/></block><l>26</l></block></custom-block></autolambda><list></list></block><custom-block s="keep item block %s"><block var="message"/></custom-block></custom-block></list></block></block></script></block-definition><block-definition s="keep item block %&apos;message&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><custom-block s="keep items such that %predRing from %l"><block s="reifyPredicate"><autolambda><block s="reportNot"><block s="reportEquals"><custom-block s="Encode character %s"><l></l></custom-block><l>0</l></block></block></autolambda><list></list></block><block s="reportTextSplit"><block var="message"/><l><option>letter</option></l></block></custom-block></block></script></block-definition></blocks><variables><variable name="InputText"><l></l></variable><variable name="outputText"><l></l></variable><variable name="PlainText"><l></l></variable><variable name="Shift Value"><l></l></variable><variable name="Cipther Text"><l></l></variable><variable name="shiftvalue"><l></l></variable></variables></project><media name="Caesar U4" app="Snap! 5.4, http://snap.berkeley.edu" version="1"></media></snapdata>