<snapdata remixID="12956470"><project name="digi4all-L1-turtle-art-2" app="Snap! 9.0, https://snap.berkeley.edu" version="2"><notes></notes><thumbnail>data:image/png;base64,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</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,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAB4KADAAQAAAABAAABaAAAAAAHwbojAABAAElEQVR4AezdB2BURf4H8N/sZjeF1E1CDb0Iooh0K3ZFRT0VPT0rIlhAPazn3xL1POvZUDwQxIINewHPcgIiCAp2BQRCDyXJppO2u/P/ztt9uxuS0BQS4Dt3m/fevHlv336C+e3Mm5knwkQBClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCA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QAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUIACFKAABShAAQpQgAIUoAAFKEABClCAAhSgAAUoQAEKUOD/26FjAQAAAIBB/tbT2FEIGTBgwIABAwYMGDBgwIABAwYMGDBgwIABAwYMGDBgwIABAwYMGDBgwIABAwYMGDBgwIABAwYMGDBgwIABAwYMGDBgwIABAwYMGDBgwIABAwYMGDBgwIABAwYMGDBgYDEQUBqIHJLcgyQAAAAASUVORK5CYII=</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="0"><sprite name="Stift" idx="1" x="-52.96472049377576" y="68.12914977344244" heading="172.99999999996157" scale="1" volume="100" pan="0" rotation="1" draggable="false" costume="0" color="255,17.999999999999993,242.60000000000022,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="198" y="60.33333333333334"><block s="receiveGo"></block><block s="doSetVar"><l>seitenlänge</l><l>100</l></block><block s="doSetVar"><l>seitenzahl</l><l>24</l></block><block s="setColor"><color>255,220,18,1</color></block><block s="setSize"><l>3</l></block><block s="down"></block><block s="doForever"><script><block s="doRepeat"><block var="seitenzahl"/><script><block s="forward"><block var="seitenlänge"/></block><block s="turn"><l>105</l></block><block s="changePenColorDimension"><l><option>hue</option></l><l>30</l></block></script></block><block s="clear"></block></script></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>24</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,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAB4KADAAQAAAABAAABaAAAAAAHwbojAAAOjklEQVR4Ae3VwQnAMAwEQcX995zk4Rq0nzH4fTAI9pmZ9/8eAQIECBAgsChwFrdMESBAgAABAldAgJ0CAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEBNgNECBAgACBQECAA3STBAgQIEBAgN0AAQIECBAIBAQ4QDdJgAABAgQE2A0QIECAAIFAQIADdJMECBAgQECA3QABAgQIEAgEBDhAN0mAAAECBATYDRAgQIAAgUBAgAN0kwQIECBAQIDdAAECBAgQCAQEOEA3SYAAAQIEPrsvA8+MDc1EAAAAAElFTkSuQmCC" mediaID="Bühne_cst_Unbenannt"/></media></snapdata>