<snapdata remixID="12948007"><project name="digi4all-L1-turtle-art-2" app="Snap! 9.0, https://snap.berkeley.edu" version="2"><notes></notes><thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAAAAXNSR0IArs4c6QAADQ9JREFUeF7tnXlQVEcex78zzI1yeaAY0AhBxbhEAxtEjaCAgCZEg0azMW6iFa11t+KWVbuVf5Kt0jVVm61UUklVNpZuTDZmPZDECCp4REM8QIwSFReUS9REiQcKczHHVjcFhsgxMwwz7/j1P9Zg9+/36+/vU+919+vXTwHACSqkgJ8UUBCAflKe3HIFFFm6FGeR+SgcdCEkJPyggCIiINz5tPYp/Gi/iaOWkzyE9PR0xMbGQqVS+SEkwOFwoKamBocPH4bZbPZLDOTUNwp03oLHqaIxWTMRU9fPQta8bK97N9+oRc2Ov8PRZu3VdnBIKMb/cROMRiNqa2uxZMkS3Llzx+vxkEFhKNBlDJiSkoIPP/yw28guXLiA8PBwDB06tMv/s78HBQXhp59+QmJiYo+90lTkYWTFZv7/AWOTYK89CdXjWbA3noFyyBj+u6MY15ajqamJ/1y/fj22bdsmDLUoCq8r0AXA5cuXY/Xq1dxJYWEh4uLiUFdXh7a2NphMJpSVlSE5ORnDhg1DQ0MD9Ho9AgMDOZj37t3jbaZMmYKWlhZotVpYLBZMmjQJkydPxuCLuzGi4t9QBI+A7oX3HwDndHB/1kPvd3bu/ppSDjQrBQUFePPNN73ecTIoDAW6ALhw4UKsXbuWR1ZRUYGVK1di3bp1iI6O5rfDq1evIjQ0FElJSbh06RKv53Q6sWnTJixatIiP3di4sbS0FKmpqXwM9/rrryMsLAxDavZxAFnRpP0ZTocNCqUKYAAGaGAtfqdTkbt/Oo5r167x37t378bbb78tDLUoCq8r0AVANvHYuHEjlEoldxQZGYnGxkaMGjUK9+/f51dCtVoNnU730OTAYDDwvzEIGawhISEcVoVCwa+OgefzEFv/pUsduPWHEly5coXXfeONN3Ds2DGX2lEl8Snw0Drg0qVLkZ2d/dBYr79dCwkORuDZrYDD1qsp5egEXFVHcuDZ7Xfz5vZxIxVpKtDtQnROTg7mzp3Lx3HsFsuuYr/+ly0bOr28dmiz2VBdXY2ioiLU19ejublZmqpTrzoVeAjAd999F/PmzfOaRNdKC3H7+HY2WOzV5ugnpiFo1ipeZ8uWLdiwYYPXYiBDwlXA5WUYNtstLy/HhAkTeuwNm7kGBwfzcSC7ekVERKDqn7nIGN7K2yjHJEAVMwP22hP89y+XXtjvG6990zm2XLFiBU6efLA0I1wJKbL+KNDjMszHH3/Mn0aMHDmS3w7ZrJYBweBis1o2IRk3bhwOHDjAZ7psrJaWloaqqipMnDiRjyGffPJJ1L//ItLD2wFks18Gn2rKAn5BtO76S2fs7Pp49fdFnQCuWrWKL/tQkbYCPS7DtLa2Ii8vD/Hx8fyx3IkTJ/jEgI0FMzMzcfr0aa7Me++9hzVr1vCZLrsCZmVlcXCioqL4+t+1j5YhI9zI67IFaPXUZXA0X+d7cKyF67oAWP9SIX8CwgqDmi3nUJG2Ar0uw3ij67c/XY3ZQ+72aYpdAS8+n8cXrxnM7ArI1h2pSFuBAV+GidBaoajc26eKqrgMNFgM/BEcW4s8cuRIn22ogvgV6HYZhi0qx8TE8Kca3S3DeNrtR1WRGKoMwylrRbcm2LiSjSHZv1TkoYDPN6QmaSbjMdWj2GbcgzYQaPLArOde+hxAFkqIIggLDfNQYinF/2w1cs+BrPvvFwA7FM/UpUCtUGGP6aCskyDnzvsVQCZ8dMBopOmnI8+4F7cctPFUbjD6HUC+PogALDTMRaPtOo5Zy+WWA1n3VxAAdmTgKc1kRKtGY6exAG3ofdeMrLMmoc4LCsCOCUquIRslljJU2WolJDV1pTsFBAdgR5BZuhQooMBe8zeUOQkrIFgAmeYxqjGYqU3Cl6b9uO3o+3GehPMk2a4JGsBfTlDqbI0otZ6RbCLk2jHBA9iRmKmaKYgMiEC+aR9ssMs1X5Lrt2gAZMqHKoOxQJ+JI5aTqLE1SC4ZcuyQqADsSFC2LpUv0xwwl8gxZ5LqsygBZBmIVY3FNG0C8o370ey8J6mkyKkzogWQJUkFFdia4WVbHcqt5+SUN8n0VdQAdmQhWZOAiIDhyDfthwPtR31QEYcCkgCQST1EGYrn9Bk4ZD6Gejtt5RcHfoBkAHwwQZkFk9OMbyzHxZIDWccpOQBZNieoYpCojUe+cR9anO1v2VERpgKSBJBJrYEaSww5+NZSijp7ozDVp6ikdwv+dU7n6+egsu0S7awRKOySvQL+Uu907Qz87LiNM20XBJoG+YYlCwBZelO1yWh1tqKsh1dC5YuAf3suGwCZzOyVUDXUKLHSmTP+xe6Bd1kByLqdqIlHsHIwDpq/E0oOZB2HpAGcOXMmMt+ZgSNvnULc+Dj+BQB26sLj6nEYE/AICsyHZJ18IXRe0gCyw9WjF0XgXHIJ7D8DqepshDtHoWlvC2ICxqB613lsN+0RQh5kG4OkAWRZZVfBkL8CZfajXZJsvQi8nLACV/JuIlIzFsXFxaisrJQtCP7quKwBfOWplajYUoVVEa/hrbwNOF913l95kK1fSQP461twmu4ZhFqH406RCVarlR/AycpgRSB/avJf427cd7af5krFNwpIGkB2+53zj+k4+rdTGB87AR988AE/Yri7ooYKrw56gY4I8Q13nV4kDaC7WiqhxFLDAhy2HEej/bq7zam+BwoQgN2IttjwLL63nkO1rc4DSamJOwoQgD2olaPPAHsX+Ye2i+7oSXXdVIAA7EWwDN1M3HU0o8x61k1ZqbqrChCAfSiVop0Km9OG76ynXNWU6rmhAAHogljsVIZAhQEHLfT82AW53KpCALooV4LmNwhXDkMhPT92UTHXqhGArunEa8WpHuMbGXaYCtxoRVV7U4AAdJOP6IAoTNcl4rPWfK9/rtbNUCRRnQD0II0jlMOQY8jA5pbtsNFRwh4o+KAJAeihfOykrhcNOfikdSeMTpOHVqgZAdgPBgYpDHjJMB//at3aDyvybkoA9jP/jwSMwDRNArbTxMQjJQlAj2Tr2ugJdRyGKMNwiNYJ3VaTAHRbsu4bpGiT+DEg5dYfvGRRHmYIQC/mmZ3CcNZaSUeBuKEpAeiGWK5UXR64GDuMBbjvbHGluuzrEIBeRoAdisR2Vm9s2QoHnF62Lj1zBOAA5HS4cgjSdDPwhfGrAbAuLZME4ADlc6LqMTyiikCRuevroAPkTrRmCcABTN10TSKsaKMNrb1oTAAOIIDM9DP6NFy0XsZle/0AexKneQLQB3l72ZCLr03FuEvfM3lIbQLQBwCqEIBXBy3G5pZtsNN37rooTgD6AEDmIkwZgmzdLHxuzPeRR3G4IQB9mCf2ebFo1Wjso49wd6pOAPoQQOaKndLKvgR/wvq9jz0L0x0B6Ie8zNHNRL2tkU7uhwS/lOQHnjxy+aLhORSZj+CW465H7aXSiK6AfsokOwiJbVz4pHWHrN8rIQD9BCBzG6wYjGf16fiPjGfGBKAfAWSuxwZEYbw6BnvNh/0ciX/cE4D+0b2LV3bqAtvGddx6WgDR+DYEAtC3evfobbY2GT/am1BpuySQiHwTBgHoG51d8pKrz8a3ljLcdPzsUn0pVCIABZRFtkD9SuAifN6az7dxyaEQgALLskGhR64+C5/JZGZMAAoMQBZOvDqOfzpCDodiEoACBJCFtMgwD4Wmw2h1GgUaoXfCIgC9o6PXreigxXxDJv94jpQLASjg7LKdM22w4bT1nICj7F9oBGD/9Bvw1uz0re3GPRxEKRYCUOBZDVEEYbZuGnaZ9gk8Us/CIwA9082nrdinIm7Ym3DRdtmnfn3hjAD0hcpe8LHMkIvPjLskdy41AegFOHxhgp1LnaiJxx7zQV+485kPAtBnUvffUZYuFZVt1WiwX+u/MYFYIAAFkghXw1gWmItPW9s/tC2FQgCKLItjVVGIUY1BsflbkUXefbgEoAjTyD4le9xSjibHbRFG3zVkAlCEKWQvNP3O8Jwk3iUhAEUIIAt5kno8QpRBKLGUibQH7WETgCJO30L9XOw3HxX1edQEoIgBZC8y5Rqy8YWId8wQgCIGkIXOFqfZVv4y61lR9oQAFGXaugbNJiQ7jYWifI+EAJQAgIMUgcjSpWCnqVB0vSEARZey7gOeof0t7jqaca6tSlQ9IgBFla7eg11qWICtxq/ggEM0vSIARZOqvgMdpgxDsjYBu03FfVcWSA0CUCCJ8FYY6boZqLVdQY2twVsmB9QOATig8vrH+MuG5/nmVTEUAlAMWXIzxqiAUZiojhXFYegEoJvJFUt19oWmcssP+NFxU9AhE4CCTk//gltseBbbjF/3z8gAtyYAB1hgf5pna4PX7TcEPSEhAP1JiA98z9fPwZemIh948swFAeiZbqJpNVs7HdW2WjTarwsyZgJQkGnxblAL9FnIF+jJCgSgd3MtSGtzdE/jjPUCbjpuCS4+AlBwKfF+QEookMPHgvu9b7yfFv8P27tdPZPGJ8MAAAAASUVORK5CYII=</thumbnail><scenes select="1"><scene name="digi4all-L1-turtle-art-2"><notes></notes><hidden></hidden><headers></headers><code></code><blocks><block-definition s="%&apos;attribute&apos; of sound %&apos;sound&apos;" type="reporter" category="sound"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">duration<options>name&#xD;duration&#xD;length&#xD;number of channels&#xD;sample rate&#xD;samples</options></input><input type="%obj"></input></inputs><script><block s="doIf"><block s="reportVariadicEquals"><list><block var="attribute"/><l>name</l></list></block><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list><l>sound</l></list><l>return sound.name;</l></block><list><block var="sound"/></list></block></block></script><list></list></block><block s="doIf"><block s="reportVariadicEquals"><list><block var="attribute"/><l>samples</l></list></block><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list><l>audioBuffer</l></list><l>var result, i;&#xD;if (audioBuffer.numberOfChannels &gt; 1) {&#xD;    result = new List();&#xD;    for (i = 0; i &lt; audioBuffer.numberOfChannels; i += 1) {&#xD;        result.add(new List(audioBuffer.getChannelData(i)));&#xD;    }&#xD;    return result;&#xD;}&#xD;return new List(audioBuffer.getChannelData(0));</l></block><list><custom-block s="%s of sound %obj"><l></l><block var="sound"/></custom-block></list></block></block></script><list></list></block><block s="doRun"><block s="reportJSFunction"><list><l>sound</l></list><l>var base64, binaryString, len, bytes, i,&#xD;    arrayBuffer, audioCtx;&#xD;if (sound.audioBuffer) {&#xD;    return;&#xD;}&#xD;base64 = sound.audio.src.split(&apos;,&apos;)[1];&#xD;binaryString =  window.atob(base64);&#xD;len = binaryString.length;&#xD;bytes = new Uint8Array(len);&#xD;for (i = 0; i &lt; len; i += 1)        {&#xD;  bytes[i] = binaryString.charCodeAt(i);&#xD;}&#xD;arrayBuffer = bytes.buffer;&#xD;Note.prototype.setupContext();&#xD;audioCtx = Note.prototype.audioContext;&#xD;audioCtx.decodeAudioData(arrayBuffer, function(buffer) {&#xD;   sound.audioBuffer = buffer;&#xD;});</l></block><list><block var="sound"/></list></block><block s="doWaitUntil"><block s="evaluate"><block s="reportJSFunction"><list><l>sound</l></list><l>return !isNil(sound.audioBuffer);</l></block><list><block var="sound"/></list></block></block><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list><l>sound</l><l>choice</l></list><l>switch (choice) {&#xD;case &apos;sample rate&apos;:&#xD;    return sound.audioBuffer.sampleRate;&#xD;case &apos;duration&apos;:&#xD;    return sound.audioBuffer.duration;&#xD;case &apos;length&apos;:&#xD;    return sound.audioBuffer.length;&#xD;case &apos;number of channels&apos;:&#xD;    return sound.audioBuffer.numberOfChannels;&#xD;default:&#xD;    return sound.audioBuffer;&#xD;}</l></block><list><block var="sound"/><block var="attribute"/></list></block></block></script></block-definition><block-definition s="turbo %&apos;action&apos;" type="command" category="other"><header></header><code></code><translations></translations><inputs><input type="%cs"></input></inputs><script><block s="doDeclareVariables"><list><l>begin</l></list></block><block s="doSetVar"><l>begin</l><block s="reportGlobalFlag"><l><option>turbo mode</option></l></block></block><block s="doSetGlobalFlag"><l><option>turbo mode</option></l><l><bool>true</bool></l></block><block s="doRun"><block var="action"/><list></list></block><block s="doSetGlobalFlag"><l><option>turbo mode</option></l><block var="begin"/></block></script></block-definition><block-definition s="play %&apos;samples&apos; at %&apos;sampleRate&apos; Hz" type="command" category="sound"><comment x="0" y="0" w="164" collapsed="false">play back a sound, a list of samples (single channel), or a list of lists (multiple channels) at the given sample rate.&#xD;for demo purposes this block also fast-plots the samples on the stage</comment><header></header><code></code><translations></translations><inputs><input type="%l"></input><input type="%n">44100<options>22.05 kHz=22050&#xD;44.1 kHz=44100&#xD;88.2 kHz=88200&#xD;96 kHz=96000</options></input></inputs><script><block s="doIf"><block s="reportIsA"><block var="samples"/><l><option>sound</option></l></block><script><block s="doSetVar"><l>samples</l><custom-block s="%s of sound %obj"><l>samples</l><block var="samples"/></custom-block></block></script><list></list></block><block s="doRun"><block s="reportJSFunction"><list><l>samples</l><l>rate</l></list><l>var audioCtx, channels, frameCount, arrayBuffer, i, source;&#xD;Note.prototype.setupContext();&#xD;audioCtx = Note.prototype.audioContext;&#xD;channels = (samples.at(1) instanceof List) ? samples.length() : 1; &#xD;frameCount = (channels === 1) ? samples.length() : samples.at(1).length(); &#xD;arrayBuffer = audioCtx.createBuffer(channels, frameCount, rate);&#xD;if (!arrayBuffer.copyToChannel) {&#xD;    arrayBuffer.copyToChannel = function (src, channel) {&#xD;        var buffer = this.getChannelData(channel);&#xD;        for (i = 0; i &lt; src.length; i += 1) {&#xD;            buffer[i] = src[i];&#xD;        }&#xD;    }&#xD;}&#xD;if (channels === 1) {&#xD;    arrayBuffer.copyToChannel(Float32Array.from(samples.asArray()), 0, 0);&#xD;} else {&#xD;    for (i = 0; i &lt; channels; i += 1) {&#xD;        arrayBuffer.copyToChannel(Float32Array.from(samples.at(i + 1).asArray()), i, 0);&#xD;    }&#xD;}&#xD;source = audioCtx.createBufferSource();&#xD;source.buffer = arrayBuffer;&#xD;source.connect(audioCtx.destination);&#xD;source.start();&#xD;source.pause = source.stop;&#xD;this.parentThatIsA(StageMorph).activeSounds.push(source);</l></block><list><block var="samples"/><block var="sampleRate"/></list></block><custom-block s="plot sound %obj"><block var="samples"/></custom-block></script></block-definition><block-definition s="%&apos;frequency&apos; Hz for %&apos;duration&apos; secs at %&apos;sample rate&apos; Hz sample rate" type="reporter" category="sound"><comment x="0" y="0" w="205" collapsed="false">generate a list of samples representing a sine wave at the given frequency, duration and sample rate</comment><header></header><code></code><translations></translations><inputs><input type="%n">440<options>a 55=55&#xD;a 110=110&#xD;a 220=220&#xD;a 440=440&#xD;a 880=880&#xD;a 1760=1760&#xD;a 3520=3520</options></input><input type="%n">1</input><input type="%n">44100<options>22.05 kHz=22050&#xD;44.1 kHz=44100&#xD;88.2 kHz=88200&#xD;96 kHz=96000</options></input></inputs><script><block s="doDeclareVariables"><list><l>output</l><l>sample period</l><l>duration in samples</l><l>time</l></list></block><block s="doSetVar"><l>sample period</l><block s="reportQuotient"><l>1</l><block var="sample rate"/></block></block><block s="doSetVar"><l>duration in samples</l><block s="reportMonadic"><l><option>ceiling</option></l><block s="reportVariadicProduct"><list><block var="duration"/><block var="sample rate"/></list></block></block></block><block s="doSetVar"><l>time</l><l>0</l></block><block s="doSetVar"><l>output</l><block s="reportNewList"><list></list></block></block><block s="doWarp"><script><block s="doRepeat"><block var="duration in samples"/><script><block s="doAddToList"><block s="reportMonadic"><l><option>sin</option></l><custom-block s="degrees %n"><block s="reportVariadicProduct"><list><l>2</l><block s="reportVariadicProduct"><list><custom-block s="PI"></custom-block><block s="reportVariadicProduct"><list><block var="frequency"/><block var="time"/></list></block></list></block></list></block></custom-block></block><block var="output"/></block><block s="doChangeVar"><l>time</l><block var="sample period"/></block></script></block></script></block><block s="doReport"><block var="output"/></block></script></block-definition><block-definition s="PI" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><l>3.141592653589793</l></block></script></block-definition><block-definition s="degrees %&apos;radians&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%n">0.5</input></inputs><script><block s="doReport"><block s="reportQuotient"><block s="reportVariadicProduct"><list><block var="radians"/><l>180</l></list></block><custom-block s="PI"></custom-block></block></block></script></block-definition><block-definition s="find first in %&apos;list&apos; such that %&apos;test&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%l"></input><input type="%predRing"></input></inputs><script><block s="doIf"><block s="reportVariadicEquals"><list><block var="list"/><block s="reportNewList"><list></list></block></list></block><script><custom-block s="error %s"><l>item not found in list</l></custom-block></script><list></list></block><block s="doIf"><block s="evaluate"><block var="test"/><list><block s="reportListItem"><l>1</l><block var="list"/></block></list></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block var="list"/></block></block></script><list></list></block><block s="doReport"><custom-block s="find first in %l such that %predRing"><block s="reportCDR"><block var="list"/></block><block var="test"/></custom-block></block></script></block-definition><block-definition s="error %&apos;msg&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doRun"><block s="reportJSFunction"><list><l>msg</l></list><l>throw new Error(msg)</l></block><list><block var="msg"/></list></block></script></block-definition><block-definition s="sound named %&apos;name&apos;" type="reporter" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><custom-block s="find first in %l such that %predRing"><block s="reportGet"><l><option>sounds</option></l></block><block s="reifyPredicate"><autolambda><block s="reportVariadicEquals"><list><custom-block s="%s of sound %obj"><l>name</l><block var="sound"/></custom-block><block var="name"/></list></block></autolambda><list><l>sound</l></list></block></custom-block></block></script></block-definition><block-definition s="plot sound %&apos;sound&apos;" type="command" category="pen"><comment x="0" y="0" w="164" collapsed="false">quickly plot the samples of a sound, a list of samples (single channel), or a list of lists (multiple channels) to the stage at a lower resolution.</comment><header></header><code></code><translations></translations><inputs><input type="%obj"></input></inputs><script><block s="doDeclareVariables"><list><l>samples</l><l>step</l><l>offset</l><l>i</l><l>stage height</l></list></block><block s="doSetVar"><l>stage height</l><custom-block s="stage height"></custom-block></block><block s="doIfElse"><block s="reportIsA"><block var="sound"/><l><option>sound</option></l></block><script><block s="doSetVar"><l>samples</l><custom-block s="%s of sound %obj"><l>samples</l><block var="sound"/></custom-block></block><block s="doSetVar"><l>step</l><block s="reportQuotient"><custom-block s="%s of sound %obj"><l>length</l><block var="sound"/></custom-block><block s="reportVariadicProduct"><list><custom-block s="stage width"></custom-block><l>2</l></list></block></block></block></script><script><block s="doSetVar"><l>samples</l><block var="sound"/></block></script></block><block s="clear"></block><block s="up"></block><block s="doIfElse"><block s="reportIsA"><block s="reportListItem"><l>1</l><block var="samples"/></block><l><option>list</option></l></block><script><block s="doSetVar"><l>step</l><block s="reportQuotient"><block s="reportListAttribute"><l><option>length</option></l><block s="reportListItem"><l>1</l><block var="samples"/></block></block><block s="reportVariadicProduct"><list><custom-block s="stage width"></custom-block><l>2</l></list></block></block></block><block s="doSetVar"><l>offset</l><block s="reportQuotient"><block var="stage height"/><l>4</l></block></block><custom-block s="for each %upvar of %l %cs"><l>channel</l><block var="samples"/><script><block s="doSetVar"><l>i</l><l>0</l></block><block s="gotoXY"><block s="reportQuotient"><custom-block s="stage width"></custom-block><l>-2</l></block><block var="offset"/></block><block s="down"></block><block s="setSize"><l>1</l></block><custom-block s="turbo %cs"><script><block s="doRepeat"><block s="reportVariadicProduct"><list><custom-block s="stage width"></custom-block><l>2</l></list></block><script><block s="doChangeVar"><l>i</l><block var="step"/></block><block s="gotoXY"><block s="reportVariadicSum"><list><block s="xPosition"></block><l>0.5</l></list></block><block s="reportVariadicSum"><list><block s="reportVariadicProduct"><list><block s="reportListItem"><block s="reportMonadic"><l><option>floor</option></l><block var="i"/></block><block var="channel"/></block><block s="reportQuotient"><block var="stage height"/><l>6.4</l></block></list></block><block var="offset"/></list></block></block></script></block></script></custom-block><block s="up"></block><block s="doChangeVar"><l>offset</l><block s="reportQuotient"><custom-block s="stage height"></custom-block><l>-2</l></block></block></script></custom-block></script><script><block s="doSetVar"><l>step</l><block s="reportQuotient"><block s="reportListAttribute"><l><option>length</option></l><block var="samples"/></block><block s="reportVariadicProduct"><list><custom-block s="stage width"></custom-block><l>2</l></list></block></block></block><block s="gotoXY"><block s="reportQuotient"><custom-block s="stage width"></custom-block><l>-2</l></block><l>0</l></block><block s="down"></block><block s="setSize"><l>1</l></block><custom-block s="turbo %cs"><script><block s="doRepeat"><block s="reportVariadicProduct"><list><custom-block s="stage width"></custom-block><l>2</l></list></block><script><block s="doChangeVar"><l>i</l><block var="step"/></block><block s="gotoXY"><block s="reportVariadicSum"><list><block s="xPosition"></block><l>0.5</l></list></block><block s="reportVariadicProduct"><list><block s="reportListItem"><block s="reportMonadic"><l><option>floor</option></l><block var="i"/></block><block var="samples"/></block><block s="reportQuotient"><block var="stage height"/><l>3.2</l></block></list></block></block></script></block></script></custom-block><block s="up"></block></script></block></script></block-definition><block-definition s="stage width" type="reporter" category="sensing"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list></list><l>return StageMorph.prototype.dimensions.x;</l></block><list></list></block></block></script></block-definition><block-definition s="stage height" type="reporter" category="sensing"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list></list><l>return StageMorph.prototype.dimensions.y;</l></block><list></list></block></block></script></block-definition><block-definition s="$circleSolid-1-255-0-0 record" type="reporter" category="sensing"><comment x="0" y="0" w="192" collapsed="false">records an audio snippet and reports it as a new sound, or zero if the user cancels</comment><header></header><code></code><translations></translations><inputs></inputs><script><block s="doDeclareVariables"><list><l>test</l><l>pic</l></list></block><block s="doSetVar"><l>test</l><block s="evaluate"><block s="reportJSFunction"><list></list><l>var soundRecorder,&#xD;    result = false;&#xD;&#xD;soundRecorder = new SoundRecorderDialogMorph(&#xD;    function (audio) {&#xD;        if (audio) {&#xD;            result = new Sound(audio, &apos;recording&apos;);&#xD;        } else {&#xD;            result = null;&#xD;            this.destroy();&#xD;        }&#xD;    }&#xD;);&#xD;&#xD;soundRecorder.cancel = function () {&#xD;    result = null;&#xD;    this.destroy();&#xD;};&#xD;&#xD;soundRecorder.key = &apos;microphone&apos;;&#xD;soundRecorder.popUp(this.world());&#xD;return function () {return result; };</l></block><list></list></block></block><block s="doWaitUntil"><block s="evaluate"><block s="reifyScript"><script><block s="doSetVar"><l>pic</l><block s="evaluate"><block var="test"/><list></list></block></block><block s="doReport"><block s="reportNot"><block s="reportVariadicEquals"><list><block var="pic"/><block s="reportBoolean"><l><bool>false</bool></l></block></list></block></block></block></script><list></list></block><list></list></block></block><block s="doReport"><block var="pic"/></block></script></block-definition><block-definition s="loudness" type="reporter" category="sensing"><header></header><code></code><translations>ca:volum del so&#xD;es:volumen del sonido&#xD;</translations><inputs></inputs><script><block s="doIf"><block s="evaluate"><block s="reportJSFunction"><list></list><l>return typeof meter == &apos;undefined&apos;</l></block><list></list></block><script><block s="doRun"><block s="reportJSFunction"><list></list><l>navigator.getUserMedia = ( navigator.getUserMedia ||&#xD;                       navigator.webkitGetUserMedia ||&#xD;                       navigator.mozGetUserMedia ||&#xD;                       navigator.msGetUserMedia);&#xD;&#xD;var audioContext = new AudioContext();&#xD;&#xD;/*&#xD;The MIT License (MIT)&#xD;&#xD;Copyright (c) 2014 Chris Wilson&#xD;&#xD;Permission is hereby granted, free of charge, to any person obtaining a copy&#xD;of this software and associated documentation files (the "Software"), to deal&#xD;in the Software without restriction, including without limitation the rights&#xD;to use, copy, modify, merge, publish, distribute, sublicense, and/or sell&#xD;copies of the Software, and to permit persons to whom the Software is&#xD;furnished to do so, subject to the following conditions:&#xD;&#xD;The above copyright notice and this permission notice shall be included in all&#xD;copies or substantial portions of the Software.&#xD;&#xD;THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR&#xD;IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,&#xD;FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE&#xD;AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER&#xD;LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,&#xD;OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE&#xD;SOFTWARE.&#xD;*/&#xD;&#xD;function createAudioMeter (audioContext,clipLevel,averaging,clipLag) {&#xD;	 var processor = audioContext.createScriptProcessor(512);&#xD;	 processor.onaudioprocess = volumeAudioProcess;&#xD;	 processor.clipping = false;&#xD;	 processor.lastClip = 0;&#xD;	 processor.volume = 0;&#xD;	 processor.clipLevel = clipLevel || 0.98;&#xD;	 processor.averaging = averaging || 0.95;&#xD;	 processor.clipLag = clipLag || 750;&#xD; 	processor.connect(audioContext.destination);&#xD; 	return processor;&#xD;};&#xD;&#xD;function volumeAudioProcess (event) {&#xD;  var buf = event.inputBuffer.getChannelData(0),&#xD;      bufLength = buf.length,&#xD; 	    sum = 0,&#xD;      x;&#xD;  for (var i=0; i&lt;bufLength; i++) {&#xD;   	x = buf[i];&#xD;   	if (Math.abs(x)&gt;=this.clipLevel) {&#xD;    		this.clipping = true;&#xD;    		this.lastClip = window.performance.now();&#xD;   	}&#xD;   	sum += x * x;&#xD;  }&#xD;  var rms =  Math.sqrt(sum / bufLength);&#xD;  this.volume = Math.max(rms, this.volume*this.averaging);&#xD;};&#xD;&#xD;function gotStream (stream) {&#xD;  mediaStreamSource = audioContext.createMediaStreamSource(stream);&#xD;  window.meter = createAudioMeter(audioContext);&#xD;  mediaStreamSource.connect(meter);&#xD;};&#xD;&#xD;navigator.getUserMedia(&#xD;  {&#xD;    "audio": {&#xD;      "mandatory": {&#xD;        "googEchoCancellation": "false",&#xD;        "googAutoGainControl": "false",&#xD;        "googNoiseSuppression": "false",&#xD;        "googHighpassFilter": "false"&#xD;      },&#xD;      "optional": []&#xD;    },&#xD;  }, gotStream, nop);</l></block><list></list></block></script><list></list></block><block s="doWaitUntil"><block s="evaluate"><block s="reportJSFunction"><list></list><l>return typeof meter != &apos;undefined&apos;</l></block><list></list></block></block><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list></list><l>return Math.floor(meter.volume * 100);</l></block><list></list></block></block></script></block-definition><block-definition s="$flash map %&apos;fn&apos; over %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%repRing"></input><input type="%l"></input></inputs><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list><l>fn</l><l>data</l><l>proc</l></list><l>return proc.reportAtomicMap(fn, data);</l></block><list><block var="fn"/><block var="data"/></list></block></block></script></block-definition><block-definition s="$flash keep %&apos;test&apos; from %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%predRing"></input><input type="%l"></input></inputs><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list><l>fn</l><l>data</l><l>proc</l></list><l>return proc.reportAtomicKeep(fn, data);</l></block><list><block var="test"/><block var="data"/></list></block></block></script></block-definition><block-definition s="$flash combine %&apos;fn&apos; with %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%repRing"></input><input type="%l"></input></inputs><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list><l>fn</l><l>data</l><l>proc</l></list><l>return proc.reportAtomicCombine(fn, data);</l></block><list><block var="fn"/><block var="data"/></list></block></block></script></block-definition><block-definition s="$flash sort %&apos;data&apos; by %&apos;fn&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%l"></input><input type="%predRing"></input></inputs><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list><l>data</l><l>fn</l><l>proc</l></list><l>return proc.reportAtomicSort(data, fn);</l></block><list><block var="data"/><block var="fn"/></list></block></block></script></block-definition><block-definition s="$flash reverse %&apos;list&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list><l>list</l></list><l>return new List(list.asArray().slice().reverse());</l></block><list><block var="list"/></list></block></block></script></block-definition><block-definition s="Leap number of hands" type="reporter" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list></list><l>return window.controller.frame(0).hands.length;</l></block><list></list></block></block></script></block-definition><block-definition s="Leap %&apos;pos&apos; position of hand %&apos;num&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%txt" readonly="true">x<options>x&#xD;y&#xD;z</options></input><input type="%n">1</input></inputs><script><block s="doDeclareVariables"><list><l>a</l></list></block><block s="doIfElse"><block s="reportNot"><block s="reportVariadicGreaterThan"><list><block var="num"/><custom-block s="Leap number of hands"></custom-block></list></block></block><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list><l>pos</l><l>num</l></list><l>var a = {x:0, y:1, z:2}[pos]; return window.controller.frame(0).hands[num-1].stabilizedPalmPosition[a];</l></block><list><block var="pos"/><block var="num"/></list></block></block></script><script><block s="doReport"><l>0</l></block></script></block></script></block-definition><block-definition s="Leap %&apos;pos&apos; rotation of hand %&apos;num&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%txt" readonly="true">yaw<options>yaw&#xD;pitch&#xD;roll</options></input><input type="%n">1</input></inputs><script><block s="doIfElse"><block s="reportNot"><block s="reportVariadicGreaterThan"><list><block var="num"/><custom-block s="Leap number of hands"></custom-block></list></block></block><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list><l>pos</l><l>num</l></list><l>var f = window.controller.frame(0);&#xD;switch (pos){&#xD;  case "yaw":&#xD;    return f.hands[num-1].yaw();&#xD;  case "pitch":&#xD;    return f.hands[num-1].pitch();&#xD;  case "roll":&#xD;    return f.hands[num-1].roll();&#xD;};&#xD;            &#xD;        </l></block><list><block var="pos"/><block var="num"/></list></block></block></script><script><block s="doReport"><l>0</l></block></script></block></script></block-definition><block-definition s="Leap %&apos;pos&apos; position of finger %&apos;num&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%txt" readonly="true">x<options>x&#xD;y&#xD;z</options></input><input type="%n">1</input></inputs><script><block s="doIfElse"><block s="reportNot"><block s="reportVariadicGreaterThan"><list><block var="num"/><block s="evaluate"><block s="reportJSFunction"><list></list><l>return window.controller.frame(0).fingers.length;</l></block><list></list></block></list></block></block><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list><l>pos</l><l>num</l></list><l>var a = {x:0, y:1, z:2}[pos]; return window.controller.frame(0).fingers[num-1].stabilizedTipPosition[a];</l></block><list><block var="pos"/><block var="num"/></list></block></block></script><script><block s="doReport"><l>0</l></block></script></block></script></block-definition><block-definition s="Leap hand %&apos;num&apos; is pinching" type="predicate" category="other"><header></header><code></code><translations></translations><inputs><input type="%s">1</input></inputs><script><block s="doIfElse"><block s="reportNot"><block s="reportVariadicGreaterThan"><list><block var="num"/><custom-block s="Leap number of hands"></custom-block></list></block></block><script><block s="doReport"><block s="reportVariadicGreaterThan"><list><block s="evaluate"><block s="reportJSFunction"><list><l>num</l></list><l>return window.controller.frame(0).hands[num-1].pinchStrength;</l></block><list><block var="num"/></list></block><l>0.75</l></list></block></block></script><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block></script></block-definition><block-definition s="Leap pinch strength of hand %&apos;num&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%n">1</input></inputs><script><block s="doIfElse"><block s="reportNot"><block s="reportVariadicGreaterThan"><list><block var="num"/><custom-block s="Leap number of hands"></custom-block></list></block></block><script><block s="doReport"><block s="reportVariadicProduct"><list><block s="evaluate"><block s="reportJSFunction"><list><l>num</l></list><l>return window.controller.frame(0).hands[num-1].pinchStrength;</l></block><list><block var="num"/></list></block><l>100</l></list></block></block></script><script><block s="doReport"><l>0</l></block></script></block></script></block-definition><block-definition s="Leap $flag" type="command" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doIf"><block s="evaluate"><block s="reportJSFunction"><list></list><l>return window.controller !== undefined</l></block><list></list></block><script><block s="doStopThis"><l><option>this block</option></l></block></script><list></list></block><block s="doDeclareVariables"><list><l>test</l></list></block><block s="doSetVar"><l>test</l><block s="evaluate"><block s="reportJSFunction"><list></list><l>var leapScript,&#xD;    done = false;&#xD;leapScript = document.createElement(&apos;script&apos;),&#xD;leapScript.onload = function () {&#xD;    done = true;&#xD;    console.log(&apos;leap is ready&apos;);&#xD;};&#xD;document.head.appendChild(leapScript);&#xD;leapScript.src = &apos;https://js.leapmotion.com/leap-0.6.4.min.js&apos;;&#xD;return function () {return done; }</l></block><list></list></block></block><block s="doWaitUntil"><block s="evaluate"><block var="test"/><list></list></block></block><block s="doRun"><block s="reportJSFunction"><list></list><l>window.controller = new Leap.Controller({enableGestures: true, background: true}); window.controller.connect();</l></block><list></list></block></script></block-definition><block-definition s="square %&apos;side&apos;" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doRepeat"><l>4</l><script><block s="forward"><block var="side"/></block><block s="turn"><l>90</l></block></script></block></script></block-definition><block-definition s="polygon corner: %&apos;corner&apos; side: %&apos;side&apos;" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doRepeat"><block var="corner"/><script><block s="forward"><block var="side"/></block><block s="turn"><l>45</l></block></script></block></script><scripts><script x="186.7744160625" y="106.000002"><block s="reportQuotient"><l></l><l></l></block></script></scripts></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></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;ca:_ buida?&#xD;es:_ vacía?&#xD;fr:_ vide?&#xD;</translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportVariadicEquals"><list><block var="data"/><block s="reportNewList"><list></list></block></list></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><list></list></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><list></list></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="reportVariadicGreaterThan"><list><block var="start"/><block var="end"/></list></block><script><block s="doSetVar"><l>step</l><l>-1</l></block><block s="doSetVar"><l>tester</l><block s="reifyReporter"><autolambda><block s="reportVariadicLessThan"><list><block var="i"/><block var="end"/></list></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="reportVariadicGreaterThan"><list><block var="i"/><block var="end"/></list></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><list></list></block><block s="doIf"><block s="reportVariadicEquals"><list><l></l><block s="reportListItem"><l>1</l><block var="words"/></block></list></block><script><block s="doReport"><custom-block s="join words %mult%txt"><block s="reportCDR"><block var="words"/></block></custom-block></block></script><list></list></block><block s="doIf"><block s="reportVariadicEquals"><list><l></l><block s="reportListItem"><l>2</l><block var="words"/></block></list></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><list></list></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><list></list></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="reportVariadicGreaterThan"><list><block var="from"/><block var="to"/></list></block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script><list></list></block><block s="doReport"><block s="reportCONS"><block var="from"/><custom-block s="numbers from %n to %n"><block s="reportVariadicSum"><list><block var="from"/><l>1</l></list></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><list></list></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></blocks><stage name="Bühne" width="480" height="360" costume="1" color="255,255,255,1" tempo="60" threadsafe="false" penlog="false" volume="100" pan="0" lines="round" ternary="false" hyperops="true" codify="false" inheritance="true" sublistIDs="false" id="1470"><pentrails>data:image/png;base64,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</pentrails><costumes><list id="1471"><item><ref mediaID="Bühne_cst_Unbenannt"></ref></item></list></costumes><sounds><list struct="atomic" id="1472"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites select="2"><sprite name="Stift" idx="1" x="8.27310486783972e-8" y="1.6260287338809576e-8" heading="150.0000000062346" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="0" color="255,31,226,1" pen="tip" id="1477"><costumes><list struct="atomic" id="1478"></list></costumes><sounds><list struct="atomic" id="1479"></list></sounds><blocks></blocks><variables></variables><scripts><script x="118.999999" y="30"><block s="receiveGo"></block><block s="setColor"><color>255,31,226,1</color></block><block s="down"></block><block s="doSetVar"><l>seitenlänge</l><l>100</l></block><block s="doSetVar"><l>seitenzahl</l><l>50</l></block><block s="doForever"><script><block s="clear"></block><block s="doWarp"><script><block s="doRepeat"><block var="seitenzahl"/><script><block s="forward"><block var="seitenlänge"/></block><block s="turn"><block s="reportQuotient"><l>360</l><block var="seitenzahl"/></block></block></script></block></script></block><block s="turn"><l>10</l></block></script></block></script></scripts></sprite><sprite name="Objekt(2)" idx="3" x="0" y="0" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="80,80,80,1" pen="tip" id="1513"><costumes><list id="1514"><item><ref mediaID="Objekt(2)_cst_Kostüm"></ref></item></list></costumes><sounds><list struct="atomic" id="1515"></list></sounds><blocks></blocks><variables></variables><scripts></scripts></sprite><sprite name="Objekt" idx="2" x="-44" y="42" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="0" color="24.990000000000023,178.5,0,1" pen="tip" id="1519"><costumes><list struct="atomic" id="1520"></list></costumes><sounds><list struct="atomic" id="1521"></list></sounds><blocks></blocks><variables></variables><scripts><script x="172" y="106.16666666666669"><block s="receiveGo"></block><block s="down"></block><block s="doRepeat"><l>100</l><script><block s="forward"><l>100</l></block><block s="turn"><l>90</l></block></script></block><block s="up"></block></script></scripts></sprite><watcher var="seitenlänge" style="normal" x="10" y="10" color="243,118,29"/><watcher var="seitenzahl" style="normal" x="10" y="31.000001999999995" color="243,118,29"/></sprites></stage><variables><variable name="seitenlänge"><l>100</l></variable><variable name="seitenzahl"><l>50</l></variable></variables></scene></scenes></project><media name="digi4all-L1-turtle-art-2" app="Snap! 9.0, https://snap.berkeley.edu" version="2"><costume name="Unbenannt" center-x="240" center-y="180" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAAAXNSR0IArs4c6QAADotJREFUeF7t1cEJADAMxLBk/6Fb6BD1R1ngQAS8M3PGESBAgAABAl8FVoC/ehsjQIAAAQJPQIA9AgECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBATYDxAgQIAAgUBAgAN0kwQIECBAQID9AAECBAgQCAQEOEA3SYAAAQIEBNgPECBAgACBQECAA3STBAgQIEBAgP0AAQIECBAIBAQ4QDdJgAABAgQE2A8QIECAAIFAQIADdJMECBAgQECA/QABAgQIEAgEBDhAN0mAAAECBC5oYGgQUTbVPQAAAABJRU5ErkJggg==" mediaID="Bühne_cst_Unbenannt"/><costume name="Kostüm" center-x="240" center-y="180" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAAAXNSR0IArs4c6QAADoVJREFUeF7t1cEJAAAIxDDdf2m3sJ+4wEEQuuMIECBAgACBd4F9XzRIgAABAgQIjAB7AgIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECByxcQFpoRMBzwAAAABJRU5ErkJggg==" mediaID="Objekt(2)_cst_Kostüm"/></media></snapdata>