<snapdata remixID="9377809"><project name="Recursion Skeleton" app="Snap! 5.4, http://snap.berkeley.edu" version="1"><notes></notes><thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAAFAElEQVR4Xu2cS2hVVxSGVzSXtCTcoEYcpFowTlQ0ZFB8dGBaVMQ60BhERYIoopUigkEIDoU6qDqQjtpJfSGIhg6KTxz6nEh8oIjioCpoi5Y4EUMTuYFzMScStzln3f/k+N3ZTdZd/9rf/tjJyTlaNTAwMGC8ICAiUIWAIvLEDhJAQESQEkBAKX7CERAHpAQQUIqfcATEASkBBJTiJxwBcUBKAAGl+AlHQByQEkBAKX7CERAHpAQQUIqfcATEASkBBJTiJxwBcUBKAAGl+AlHQByQEkBAKX7CERAHpAQQUIqfcATEASkBBJTiJxwBcUBKAAGl+AlHQByQEkBAKX7CERAHpAQQUIqfcATEASkBBJTiJxwBcUBKAAGl+AlHQByQEkBAKX7CERAHpAQQUIqfcATEASkBBJTiJxwBcUBKAAGl+AlHQByQEkBAKX7CERAHpAQQUIqfcATEASkBBJTiJxwBcUBKAAGl+AlHQByQEkBAKX7CERAHpAQQUIo/O+FPrvQMDvPVwuaKDoWAFcVNWJwAAuKElAACSvFnP7z0o9nzxzICZt8B6YQIKMVPeETg2oEjNn9Xh3W3d1rbqf2pgeEETA1lvhshYL73N/OrO93eaavfO/kONS6xHU8vJj4ROQEzv/XZGBABs7EPn90U0UXIH/M22Mbrx8rrj07ApEA4AZMSzPnnETDnGzxWlhe/COEEHCs7l5M5ETAnG6lcRvTAQWmG+N2N+MMI8dpIwNtH/rIJM6baP3cfWcuWtsTL4XfAxAiz0aC3t9eKxeKIw4zmrkb0mUjAtFeLgGkTFfX7ectOszM9Vj1rqk1a9a1t3r512CSlU+vRuctDvv706q3B940L5g75+v2TFwbffzGx3gq1X9qLnvvWsm2NPei+ZB2XD6e2SgRMDaW+0a5vfrCvn70tD/JfVZ/1z51m3+3eZItaWxMNGP0dkFtxiTDm/8MHpy2x6v+Hr7O/MN7O1r2083duDPlmSajSK7q/G38fFf82u80aZk633ifPbeO1o6mB5ARMDaW+0Z6m723Km/HlQW5Vv7Z1v3RZQ129NS9PdgLyO6B+fzM9wd7F6+3fe4+t+cd2a1270qbPaCrPG7+NNtJCSn/f+9CrplhrW+/9mToDTsDUkWoa9vX1WaFQ+GB4ktOLq2DNfuYqNYmAJ5Zus5pinY2rKdjK4/tS58IJmDrS7DVMIqD3ahDQm3AG+p/7aZ8t+7UrA5MMHwEBM7kt6Q7FCZguT7p9hMDN37tt8uwme/Xwb5vTscIQEGUqSiD+uDwCVhQ/YQiIA1IC8YdFo8fpR/M0jPdCuAjxJizoj4AC6ERa+Z9IxgX8lFtxlebICVhp4o550aNSCOgImdbhBCIhuQoOZ0ZligQQMEWYtEpOgKvg5AzpkIAAAiaAx0fzSYCr4Hzu65hZFQKOma3yGVT1v+NHq0FAn32layABBAwERZkPAQT04UrXQAIIGAiKMh8CCOjDla6BBBAwEBRlPgQQ0IcrXQMJIGAgKMp8CCCgD1e6BhJAwEBQlPkQQEAfrnQNJICAgaAo8yGAgD5c6RpIAAEDQVHmQwABfbjSNZAAAgaCosyHAAL6cKVrIAEEDARFmQ8BBPThStdAAggYCIoyHwII6MOVroEEEDAQFGU+BBDQhytdAwkgYCAoynwIIKAPV7oGEkDAQFCU+RBAQB+udA0kgICBoCjzIfAO2AgDxprB3+EAAAAASUVORK5CYII=</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="true" codify="false" inheritance="true" sublistIDs="false" scheduled="false" id="1"><pentrails>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAZ00lEQVR4Xu3dT4yjZ33A8d/jAVVUJcofle44qCSpEKSq0EolUgQcAuOVkHqCQzlAlR5zKOsZUZVyCrmUPwLNTNoDx0a0h17aK9J6WQ4IIVGkCFX8UUUCiHgWEMmqUBCF9VM5ATTjGS/22H5/fj2fXCJt/L6/5/08T/hqgscu4S8CBAgQIECgcYHS+EQDCRAgQIAAgRBgh4AAAQIECCQICHACupEECBAgQECAnQECBAgQIJAgIMAJ6EYSIECAAAEBdgYIECBAgECCgAAnoBtJgAABAgQE2BkgQIAAAQIJAgKcgG4kAQIECBAQYGeAAAECBAgkCAhwArqRBAgQIEBAgJ0BAgQIECCQICDACehGEiBAgAABAXYGCBAgQIBAgoAAJ6AbSYAAAQIEBNgZIECAAAECCQICnIBuJAECBAgQEGBngAABAgQIJAgIcAK6kQQIECBAQICdAQIECBAgkCAgwAnoRhIgQIAAAQF2BggQIECAQIKAACegG0mAAAECBATYGSBAgAABAgkCApyAbiQBAgQIEBBgZ4AAAQIECCQICHACupEECBAgQECAnQECBAgQIJAgIMAJ6EYSIECAAAEBdgYIECBAgECCgAAnoBtJgAABAgQE2BkgQIAAAQIJAgKcgG4kAQIECBAQYGeAAAECBAgkCAhwArqRBAgQIEBAgJ0BAgQIECCQICDACehGEiBAgAABAXYGCBAgQIBAgoAAJ6AbSYAAAQIEBNgZIECAAAECCQICnIBuJAECBAgQEGBngAABAgQIJAgIcAK6kQQIECBAQICdAQIECBAgkCAgwAnoRhIgQIAAAQF2BggQIECAQIKAACegG0mAAAECBATYGSBAgAABAgkCApyAbiQBAgQIEBBgZ4AAAQIECCQICHACupEECBAgQECAnQECBAgQIJAgIMAJ6EYSIECAAAEBdgYIECBAgECCgAAnoBtJgAABAgQE2BkgQIAAAQIJAgKcgG4kAQIECBAQYGeAAAECBAgkCAhwArqRBAgQIEBAgJ0BAgQIECCQICDACehGEiBAgAABAXYGCBAgQIBAgoAAJ6AbSYAAAQIEBNgZIECAAAECCQICnIBuJAECBAgQEGBngAABAgQIJAgIcAK6kQQIECBAQICdAQIECBAgkCAgwAnoRhIgQIAAAQF2BggQIECAQIKAACegG0mAAAECBATYGSBAgAABAgkCApyAbiQBAgQIEBBgZ4AAAQIECCQICHACupEECBAgQECAnQECBAgQIJAgIMAJ6EYSIECAAAEBdgYIECBAgECCgAAnoBtJgAABAgQE2BkgQIAAAQIJAgKcgG4kAQIECBAQYGeAAAECBAgkCAhwArqRBAgQIEBAgJ0BAgQIECCQICDACehGEiBAgAABAXYGCBAgQIBAgoAAJ6AbSYAAAQIEBNgZIECAAAECCQICnIBuJAECBAgQEGBngAABAgQIJAgIcAK6kQQIECBAQICdAQIECBAgkCAgwAnoRhIgQIAAAQF2BggQIECAQIKAACegG0mAAAECBATYGSBAgAABAgkCApyAbiQBAgQIEBBgZ4AAAQIECCQICHACupEECBAgQECAnQECBAgQIJAgIMAJ6EYSIECAAAEBdgYIECBAgECCgAAnoBtJgAABAgQE2BkgQIAAAQIJAgKcgG4kAQIECBAQYGeAAAECBAgkCAhwArqRBAgQIEBAgJ0BAgQIECCQICDACehGEiBAgAABAXYGCBAgQIBAgoAAJ6AbSYAAAQIEBNgZIECAAAECCQICnIBuJAECBAgQEGBngAABAgQIJAgIcAK6kQQIECBAQICdAQIECBAgkCAgwAnoRhIgQIAAAQF2BggQIECAQIKAACegG0mAAAECBATYGSBAgAABAgkCApyAbiQBAgQIEBBgZ4AAAQIECCQICHACupEECBAgQECAnQECBAgQIJAgIMAJ6EYSIECAAAEBdgYIECBAgECCgAAnoBtJgAABAgQE2BkgQIAAAQIJAgKcgG4kAQIECBAQYGeAAAECBAgkCAhwArqRBAgQIEBAgJ0BAgQIECCQICDACehGEiBAgAABAXYGCBAgQIBAgoAAJ6AbSYAAAQIEBNgZIECAAAECCQICnIBuJAECBAgQEGBngAABAgQIJAgIcAK6kQQIECBAQICdAQIECBAgkCAgwAnoRhIgQIAAAQF2BggQIECAQIKAACegG0mAAAECBATYGSBAgAABAgkCApyAbiQBAgQIEBBgZ4AAAQIECCQICHACupEECBAgQECAnQECBAgQIJAgIMAJ6EYSIECAAAEBdgYIECBAgECCgAAnoBtJgAABAgQE2BkgQIAAAQIJAgKcgG4kAQIECBAQ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</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="131.25" y="-31.25" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="0" color="145,26,68,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="13.711442786069654" y="10"><block s="receiveGo"></block><block s="doSayFor"><l>Hi!</l><l>4</l></block></script><script x="12.111135391518928" y="83.17910547761198"><custom-block s="copies %n %txt"><l></l><l></l><comment w="241.49253731343276" collapsed="true">ex. (copies 4 spam) = spam spam spam spam</comment></custom-block></script><script x="11.014925373134389" y="118.07960199004975"><custom-block s="fib %s"><l></l><comment w="87.01492537313435" collapsed="true">ex. (fib 7) = 13</comment></custom-block></script><script x="11.900497512437852" y="153.55223880597026"><custom-block s="initials %s"><l></l><comment w="225.33333333333334" collapsed="true">ex. (initials potatoes are delicious) = pad</comment></custom-block></script><script x="10" y="189.61194029850748"><custom-block s="pascal %n %n"><l></l><l></l><comment w="117.61194029850748" collapsed="true">ex. (pascal 6 4) = 15</comment></custom-block></script><script x="10.422885572139364" y="229.0845771144281"><custom-block s="to binary %n"><l></l><comment w="130.66666666666666" collapsed="true">new solution with recursion; cannot be old code</comment></custom-block></script><script x="12.119402985074657" y="298.358206955224"><custom-block s="pig latin %s"><custom-block s="sentence $arrowRight list %txt"><l>chris we want to talk so nobody understands us</l></custom-block></custom-block></script><script x="397.7562189054727" y="110.33333333333331"><block s="setHeading"><l>90</l></block><block s="gotoXY"><l>0</l><l>0</l></block><block s="clear"></block></script><script x="200" y="368"><custom-block s="square fractal %s"><l>100</l></custom-block><block s="bubble"><l>this is the yellow level</l></block></script><script x="20.08955223880605" y="377.33333333333337"><custom-block s="tri fractal %s"><l>10</l></custom-block><block s="bubble"><custom-block s="pig word %s"><l>jeff</l></custom-block></block></script></scripts></sprite></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="initials %&apos;sentence&apos;" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doIf"><l/><script><block s="doReport"><l></l></block></script></block><block s="doReport"><l></l></block></script></block-definition><block-definition s="copies %&apos;num&apos; %&apos;word&apos;" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%txt"></input></inputs><script><block s="doIfElse"><l/><script><block s="doReport"><l></l></block></script><script><block s="doReport"><l></l></block></script></block></script></block-definition><block-definition s="spell number" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><l></l></block></script></block-definition><block-definition s="fib %&apos;num&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doSetVar"><l>cache</l><block s="reportNewList"><list><l>1</l><l>1</l></list></block></block><block s="doSetVar"><l>output</l><l></l></block><block s="doSetVar"><l>i</l><l>1</l></block><block s="doRepeat"><l>16</l><script><block s="doSetVar"><l>output</l><block s="reportJoinWords"><list><block var="output"/><custom-block s="fib %s"><block var="i"/></custom-block></list></block></block><block s="doSetVar"><l>i</l><block s="reportSum"><block var="i"/><l>1</l></block></block></script></block><block s="bubble"><block s="reportJoinWords"><list><block var="output"/><l>...</l></list></block></block><block s="doIf"><block s="reportGreaterThan"><block var="num"/><block s="reportSum"><block s="reportListLength"><block var="cache"/></block><l>1</l></block></block><script><block s="doReport"><block s="reportListItem"><block var="num"/><block var="cache"/></block></block></script></block><block s="doDeclareVariables"><list><l>a</l></list></block><block s="doSetVar"><l>a</l><block s="reportSum"><custom-block s="fib %s"><block s="reportDifference"><block var="num"/><l>1</l></block></custom-block><custom-block s="fib %s"><block s="reportDifference"><block var="num"/><l>2</l></block></custom-block></block></block><block s="doIf"><block s="reportEquals"><block var="num"/><block s="reportSum"><block s="reportListLength"><block var="cache"/></block><l>1</l></block></block><script><block s="doAddToList"><block var="a"/><block var="cache"/></block></script></block><block s="doReport"><block var="a"/></block></script></block-definition><block-definition s="pig latin %&apos;list&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doIfElse"><custom-block s="empty? %l"><block var="list"/></custom-block><script><block s="doReport"><l> </l></block></script><script><block s="doIfElse"><l/><script><block s="doReport"><l></l></block></script><script><block s="doReport"><l></l></block></script></block></script></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;</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></list><l>var stage = this.parentThatIsA(StageMorph),&#xD;    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();</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;</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;</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;</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;</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;</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;</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;</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;</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;</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;</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;</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;</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;</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;</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;</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;</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;</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;</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;</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="pig word %&apos;word&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doSetVar"><l>letterlist</l><block s="reportTextSplit"><block var="word"/><l><option>letter</option></l></block></block><block s="doIfElse"><block s="reportListContainsItem"><block s="reportNewList"><list><l>a</l><l>e</l><l>i</l><l>o</l><l>u</l></list></block><block s="reportLetter"><l>1</l><block var="letterlist"/></block></block><script><block s="doReport"><block s="reportJoinWords"><list><block var="letterlist"/><l>ay</l></list></block></block></script><script><block s="doReport"><custom-block s="pig word %s"><block s="reportJoinWords"><list><block s="reportCDR"><block var="letterlist"/></block><block s="reportLetter"><l>1</l><block var="letterlist"/></block></list></block></custom-block></block></script></block></script></block-definition><block-definition s="pascal %&apos;row&apos; %&apos;column&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input></inputs><script><block s="doIfElse"><l/><script><block s="doReport"><l></l></block></script><script><block s="doReport"><l></l></block></script></block></script></block-definition><block-definition s="to binary %&apos;number&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%n"></input></inputs><script><block s="doIfElse"><l/><script><block s="doReport"><l></l></block></script><script><block s="doIfElse"><l/><script><block s="doReport"><l></l></block></script><script><block s="doReport"><l></l></block></script></block></script></block></script></block-definition><block-definition s="triangle fractal level: %&apos;level&apos; size: %&apos;size&apos;" type="command" category="looks"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input></inputs><script><block s="doIfElse"><block s="reportEquals"><block var="level"/><l>1</l></block><script><block s="forward"><block var="size"/></block></script><script><custom-block s="triangle size: %n"><block var="size"/></custom-block><block s="turnLeft"><l>60</l></block><custom-block s="triangle size: %n"><block var="size"/></custom-block><block s="turn"><l>120</l></block><custom-block s="triangle size: %n"><block var="size"/></custom-block><block s="turnLeft"><l>60</l></block></script></block><custom-block s="triangle size: %n"><l></l></custom-block></script></block-definition><block-definition s="triangle size: %&apos;size&apos;" type="command" category="looks"><header></header><code></code><translations></translations><inputs><input type="%n"></input></inputs><script><block s="setHeading"><l>90</l></block><block s="gotoXY"><l>0</l><l>0</l></block><block s="down"></block><block s="setColor"><color>145,26,68,1</color></block><block s="doRepeat"><l>1</l><script><block s="turnLeft"><l>60</l></block><block s="forward"><block var="size"/></block><block s="turn"><l>120</l></block><block s="forward"><block var="size"/></block><block s="turnLeft"><l>240</l></block><block s="forward"><block var="size"/></block></script></block></script><scripts><script x="201.00000099999988" y="107.00000100000187"><block s="forward"><block var="size"/></block></script></scripts></block-definition><block-definition s="fractal other" type="command" category="looks"><header></header><code></code><translations></translations><inputs></inputs></block-definition><block-definition s="tri fractal %&apos;size&apos;" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doIf"><block s="reportGreaterThan"><block var="size"/><l>3</l></block><script><block s="doRepeat"><l>3</l><script><block s="forward"><block var="size"/></block><custom-block s="tri fractal %s"><block s="reportQuotient"><block var="size"/><l>2</l></block></custom-block><block s="turn"><l>120</l></block></script></block></script></block></script></block-definition><block-definition s="square fractal %&apos;size&apos;" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="down"></block><block s="setColor"><color>145,26,68,1</color></block><block s="doIf"><block s="reportGreaterThan"><block var="size"/><l>4</l></block><script><block s="doRepeat"><l>4</l><script><block s="forward"><block var="size"/></block><custom-block s="square fractal %s"><block s="reportQuotient"><block var="size"/><l>2</l></block></custom-block><block s="turn"><l>90</l></block></script></block></script></block></script></block-definition></blocks><variables><variable name="cache"><l>0</l></variable><variable name="output"><l>0</l></variable><variable name="i"><l>0</l></variable><variable name="letterlist"><list struct="atomic" id="828"></list></variable></variables></project><media name="Recursion Skeleton" app="Snap! 5.4, http://snap.berkeley.edu" version="1"></media></snapdata>