<snapdata remixID="11496733"><project name="MachineLearningAudioFinch3" app="Snap! 7, https://snap.berkeley.edu" version="2"><notes></notes><thumbnail>data:image/png;base64,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</thumbnail><scenes select="1"><scene name="MachineLearningAudioFinch3"><notes></notes><hidden></hidden><headers></headers><code></code><blocks><block-definition s="Load Libraries" type="command" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doRepeat"><l>2</l><script><block s="doRun"><block s="reportJSFunction"><list></list><l>let script = document.createElement("script");&#xD;script.type = "text/javascript";&#xD;script.src = "https://cdn.jsdelivr.net/npm/@tensorflow/tfjs@1.3.1/dist/tf.min.js";&#xD;document.head.appendChild(script);&#xD;let script2 = document.createElement("script");&#xD;script2.type = "text/javascript";&#xD;script2.src = "https://cdn.jsdelivr.net/npm/@tensorflow-models/speech-commands@0.4.0/dist/speech-commands.min.js";&#xD;document.head.appendChild(script2);  </l></block><list></list></block><block s="doWait"><l>1</l></block></script></block></script></block-definition><block-definition s="Load Model %&apos;URL&apos;" type="command" category="other"><header></header><code></code><translations></translations><inputs><input type="%txt"></input></inputs><script><block s="doRun"><block s="reportJSFunction"><list><l>URL</l></list><l>const checkpointURL = URL + "model.json"; // model topology&#xD;const metadataURL = URL + "metadata.json"; // model metadata&#xD;&#xD;const recognizer = speechCommands.create("BROWSER_FFT", undefined, checkpointURL, metadataURL);&#xD;&#xD;// check that model and metadata are loaded via HTTPS requests.&#xD;while (!recognizer.ensureModelLoaded()){}&#xD;&#xD;// Set a global variable for the recognizer&#xD;window.recognizer = recognizer&#xD;     </l></block><list><block var="URL"/></list></block></script></block-definition><block-definition s="Stop Listening" type="command" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doRun"><block s="reportJSFunction"><list></list><l>window.recognizer.stopListening()</l></block><list></list></block></script></block-definition><block-definition s="Predict" type="command" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doDeclareVariables"><list><l>predictionJS</l></list></block><block s="doDeclareVariables"><list><l>predictionList</l></list></block><block s="doRun"><block s="reportJSFunction"><list></list><l>const report_predictions = (prediction) =&gt; {&#xD;   let class_names = recognizer.wordLabels()&#xD;   let names_and_scores = Array.prototype.slice.call(prediction.scores).map((score, index) =&gt; [class_names[index], score]);&#xD;&#xD;   //console.log(class_names)&#xD;&#xD;   var predictionList = []&#xD;&#xD;   // This loop is for outer array&#xD;   for (var i = 0; i &lt; names_and_scores.length; i++) {&#xD;      if (names_and_scores[i].length &gt; 1) {&#xD;         predictionList.push([class_names[i],names_and_scores[i][1]]) &#xD;         //console.log([class_names[i], predictionList[i]])&#xD;      }&#xD;   }&#xD;&#xD;   window.prediction = predictionList&#xD;   //console.log(predictionList)&#xD;};&#xD;&#xD;// listen() takes two arguments:&#xD;// 1. A callback function that is invoked anytime a word is recognized.&#xD;// 2. A configuration object with adjustable fields&#xD;window.recognizer.listen(report_predictions, {invokeCallbackOnNoiseAndUnknown: true});&#xD;           </l></block><list></list></block><block s="doUntil"><block s="reportKeyPressed"><l><option>x</option></l></block><script><block s="doSetVar"><l>predictionJS</l><block s="evaluate"><block s="reportJSFunction"><list></list><l>return window.prediction</l></block><list></list></block></block><block s="doSetVar"><l>predictionList</l><block s="reportTextSplit"><block s="reportJoinWords"><list><block var="predictionJS"/></list></block><l>,</l></block></block><block s="doSetVar"><l>PredictionTable</l><block s="reportReshape"><block var="predictionList"/><list><block s="reportQuotient"><block s="reportListAttribute"><l><option>length</option></l><block var="predictionList"/></block><l>2</l></block><l>2</l></list></block></block><block s="doSetVar"><l>Prediction</l><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportListItem"><l>2</l><l/></block></autolambda><list></list></block><block var="PredictionTable"/></block></block></script></block><block s="doRun"><block s="reportJSFunction"><list></list><l>window.recognizer.stopListening()</l></block><list></list></block></script></block-definition><block-definition s="Finch Distance (cm)" type="reporter" category="sensing"><header></header><code></code><translations>ca:Finch Distància (cm)&#xD;de:Finch Entfernung (cm)&#xD;es:Finch Distancia (cm)&#xD;fr:Finch Distance (cm)&#xD;he:Finch מרחק (cm)&#xD;ko:Finch 거리 센서 (cm)&#xD;nl:Finch Afstand (cm)&#xD;pt:Finch Distância (cm)&#xD;zh_CN:Finch 距离 (cm)&#xD;zh_TW:Finch 距離 (cm)&#xD;</translations><inputs></inputs><script><block s="doReport"><block s="reportURL"><l>http://127.0.0.1:30061/hummingbird/in/Distance/static</l></block></block></script></block-definition><block-definition s="Finch %&apos;port&apos; Light" type="reporter" category="sensing"><header></header><code></code><translations>ca:Finch _ Llum&#xD;de:Finch _ Licht&#xD;es:Finch _ Luz&#xD;fr:Finch _ Lumière&#xD;he:Finch _ אור&#xD;ko:Finch _ 빛 센서&#xD;nl:Finch _ Licht&#xD;pt:Finch _ Luz&#xD;zh_CN:Finch _ 灯光&#xD;zh_TW:Finch _ 燈光&#xD;</translations><inputs><input type="%txt" readonly="true">Right<options>Left&#xD;Right</options></input></inputs><script><block s="doReport"><block s="reportURL"><block s="reportJoinWords"><list><l>http://127.0.0.1:30061/hummingbird/in/Light/</l><block var="port"/></list></block></block></block></script></block-definition><block-definition s="Finch %&apos;port&apos; Line" type="reporter" category="sensing"><header></header><code></code><translations>ca:Finch _ Línia&#xD;de:Finch _ Linie&#xD;es:Finch _ Línea&#xD;fr:Finch _ Ligne&#xD;he:Finch _ קו&#xD;ko:Finch _ 선&#xD;nl:Finch _ Lijn&#xD;pt:Finch _ Linha&#xD;zh_CN:Finch _ 线&#xD;zh_TW:Finch _ 線&#xD;</translations><inputs><input type="%txt" readonly="true">Right<options>Left&#xD;Right</options></input></inputs><script><block s="doDeclareVariables"><list><l>value</l></list></block><block s="doSetVar"><l>value</l><block s="reportURL"><block s="reportJoinWords"><list><l>http://127.0.0.1:30061/hummingbird/in/Line/</l><block var="port"/></list></block></block></block><block s="doIfElse"><block s="reportNot"><block s="reportEquals"><block var="value"/><l>Not Connected</l></block></block><script><block s="doReport"><block s="reportRound"><block var="value"/></block></block></script><script><block s="doReport"><l>Not Connected</l></block></script></block></script></block-definition><block-definition s="Finch %&apos;port&apos; Encoder (rotations)" type="reporter" category="sensing"><header></header><code></code><translations>ca:Finch Recompte de voltes _&#xD;de:Finch _ Kodierer&#xD;es:Finch Recuento de vueltas _&#xD;fr:Finch _ Encodeur&#xD;he:Finch _ קודאי&#xD;ko:Finch _ 인코더&#xD;nl:Finch _ Encoder&#xD;pt:Finch _ Código&#xD;zh_CN:Finch _ 编码器&#xD;zh_TW:Finch _ 編碼器&#xD;</translations><inputs><input type="%txt" readonly="true">Right<options>Left&#xD;Right</options></input></inputs><script><block s="doDeclareVariables"><list><l>value</l></list></block><block s="doSetVar"><l>value</l><block s="reportURL"><block s="reportJoinWords"><list><l>http://127.0.0.1:30061/hummingbird/in/Encoder/</l><block var="port"/></list></block></block></block><block s="doIfElse"><block s="reportNot"><block s="reportEquals"><block var="value"/><l>Not Connected</l></block></block><script><block s="doReport"><block var="value"/></block></script><script><block s="doReport"><l>Not Connected</l></block></script></block></script></block-definition><block-definition s="Finch Reset Encoders" type="command" category="sensing"><header></header><code></code><translations>ca:Finch Reinicialitza els comptadors de voltes&#xD;de:Finch Kodierer Zurücksetzen&#xD;es:Finch Reinicializar los contadores de vueltas&#xD;fr:Finch Réinitialiser les encodeurs&#xD;he:Finch לאפס קודאי&#xD;ko:Finch 인코더 리셋하기&#xD;nl:Finch Encoders Resetten&#xD;pt:Finch Redefinir Código&#xD;zh_CN:Finch 重置编码器&#xD;zh_TW:Finch 重置編碼器&#xD;</translations><inputs></inputs><script><block s="doRun"><block s="reifyReporter"><autolambda><block s="reportURL"><block s="reportJoinWords"><list><l>http://127.0.0.1:30061/hummingbird/out/resetEncoders/A/</l></list></block></block></autolambda><list></list></block><list></list></block><block s="doWait"><l>0.2</l></block></script></block-definition><block-definition s="Finch Play Note %&apos;note&apos; for %&apos;beats&apos; beats" type="command" category="sound"><header></header><code></code><translations>ko:Finch _ 번 음을 _ 박자로 연주하기&#xD;de:Finch Spiele Note _ für _ Schläge&#xD;pt:Finch Toque Notas _ por _ Batidas&#xD;fr:Finch Jouer la note _ pour _ battement(s)&#xD;nl:Finch Speel Noot _ voor _ Beats&#xD;zh_CN:Finch 演奏 音阶 _ 于 _ 拍&#xD;zh_TW:Finch 演奏 音階 _ 於 _ 拍&#xD;ar:Finch تشغيل الموسيقى _ _&#xD;dk:Finch Spil tone _ i _ slag&#xD;he:Finch נגן תו _ במשך _ פעימות&#xD;es:Finch Emitir un sonido _ por _ pulsos&#xD;ca:Finch Toca nota _ durant _ temps&#xD;fi:Finch Soita sävel _ _ iskun ajan&#xD;sv:Finch Spela not _ _&#xD;</translations><inputs><input type="%n">60<options>§_pianoKeyboardMenu</options></input><input type="%n">0.5</input></inputs><script><block s="doIf"><block s="reportGreaterThan"><block var="note"/><l>135</l></block><script><block s="doSetVar"><l>note</l><l>135</l></block></script></block><block s="doIf"><block s="reportGreaterThan"><l>32</l><block var="note"/></block><script><block s="doSetVar"><l>note</l><l>32</l></block></script></block><block s="doIf"><block s="reportGreaterThan"><block var="beats"/><l>16</l></block><script><block s="doSetVar"><l>beats</l><l>16</l></block></script></block><block s="doIf"><block s="reportGreaterThan"><l>0</l><block var="beats"/></block><script><block s="doSetVar"><l>beats</l><l>0</l></block></script></block><block s="doSetVar"><l>beats</l><block s="reportRound"><block s="reportVariadicProduct"><list><block s="reportQuotient"><l>60000</l><block s="getTempo"></block></block><block var="beats"/></list></block><comment w="241.99999999999997" collapsed="false">BPM = tempo&#xD;60 * 1000/BPM = BPMS beats per millisecond&#xD;beats&#xD;                            = Duration in ms = BPMS * number of beats&#xD;                        </comment></block></block><block s="doSetVar"><l>note</l><block s="reportRound"><block var="note"/></block></block><block s="doRun"><block s="reifyReporter"><autolambda><block s="reportURL"><block s="reportJoinWords"><list><l>http://127.0.0.1:30061/hummingbird/out/playnote/</l><block var="note"/><l>/</l><block var="beats"/></list></block></block></autolambda><list></list></block><list></list></block><block s="doWait"><block s="reportQuotient"><block var="beats"/><l>1000</l></block><comment w="205" collapsed="false">block for number of seconds</comment></block></script></block-definition><block-definition s="micro:bit Button %&apos;button&apos;" type="predicate" category="sensing"><header></header><code></code><translations>ko:micro:bit 버튼 _&#xD;de:micro:bit Knopf _&#xD;pt:micro:bit Tecla _&#xD;fr:micro:bit Bouton _&#xD;nl:micro:bit Knop _&#xD;zh_CN:micro:bit 按钮 _&#xD;zh_TW:micro:bit 按鈕 _&#xD;ar:micro:bit زر _&#xD;dk:micro:bit Knap _&#xD;he:micro:bit לחצן _&#xD;es:micro:bit Pulsador _&#xD;ca:micro:bit Botó _&#xD;fi:micro:bit Painike _&#xD;sv:micro:bit Knapp _&#xD;</translations><inputs><input type="%txt" readonly="true">A<options>A&#xD;B&#xD;Logo (V2)</options></input></inputs><script><block s="doIf"><block s="reportEquals"><block var="button"/><l>Logo (V2)</l></block><script><block s="doSetVar"><l>button</l><l>Logo</l></block></script></block><block s="doDeclareVariables"><list><l>result</l></list></block><block s="doSetVar"><l>result</l><block s="reportURL"><block s="reportJoinWords"><list><l>http://127.0.0.1:30061/hummingbird/in/button/</l><block var="button"/></list></block></block></block><block s="doReport"><block s="reportIfElse"><block s="reportEquals"><block var="result"/><l>true</l></block><block s="reportBoolean"><l><bool>true</bool></l></block><block s="reportIfElse"><block s="reportEquals"><block var="result"/><l>false</l></block><block s="reportBoolean"><l><bool>false</bool></l></block><block var="result"/></block></block></block></script></block-definition><block-definition s="micro:bit V2 %&apos;sensor&apos;" type="reporter" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%txt" readonly="true">Sound<options>Sound&#xD;Temperature (°C)</options></input></inputs><script><block s="doIf"><block s="reportEquals"><block var="sensor"/><l>Temperature (°C)</l></block><script><block s="doSetVar"><l>sensor</l><l>Temperature</l></block></script></block><block s="doReport"><block s="reportURL"><block s="reportJoinWords"><list><l>http://127.0.0.1:30061/hummingbird/in/V2sensor/</l><block var="sensor"/></list></block></block></block></script></block-definition><block-definition s="Finch %&apos;dim&apos;" type="predicate" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%txt" readonly="true">Beak Up<options>Beak Up&#xD;Beak Down&#xD;Tilt Left&#xD;Tilt Right&#xD;Level&#xD;Upside Down&#xD;Shake</options></input></inputs><script><block s="doIfElse"><block s="reportEquals"><block s="reportURL"><block s="reportJoinWords"><list><l>http://127.0.0.1:30061/hummingbird/in/finchOrientation/</l><block var="dim"/></list></block></block><l>true</l></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></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="Finch %&apos;device&apos; %&apos;dim&apos;" type="reporter" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%txt" readonly="true">Accelerometer (m/s²)<options>Accelerometer (m/s²)&#xD;Magnetometer (µT)</options></input><input type="%txt" readonly="true">X<options>X&#xD;Y&#xD;Z</options></input></inputs><script><block s="doIf"><block s="reportEquals"><block var="device"/><l>Accelerometer (m/s²)</l></block><script><block s="doSetVar"><l>device</l><l>finchAccel</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="device"/><l>Magnetometer (µT)</l></block><script><block s="doSetVar"><l>device</l><l>finchMag</l></block></script></block><block s="doReport"><block s="reportURL"><block s="reportJoinWords"><list><l>http://127.0.0.1:30061/hummingbird/in/</l><block var="device"/><l>/</l><block var="dim"/></list></block></block></block></script></block-definition><block-definition s="Finch Compass" type="reporter" category="sensing"><header></header><code></code><translations>ko:Finch 나침반 센서&#xD;de:Finch Kompass&#xD;pt:Finch Bússola&#xD;fr:Finch Compas&#xD;nl:Finch Kompas&#xD;zh_CN:Finch 指南针&#xD;zh_TW:Finch 指南針&#xD;ar:Finch بوصلة&#xD;dk:Finch Kompas&#xD;he:Finch מצפן&#xD;es:Finch Brujula&#xD;ca:Finch Brúixola&#xD;fi:Finch Kompassi&#xD;sv:Finch Kompass&#xD;</translations><inputs></inputs><script><block s="doReport"><block s="reportURL"><block s="reportJoinWords"><list><l>http://127.0.0.1:30061/hummingbird/in/</l><l>finchCompass/static</l></list></block></block></block></script></block-definition><block-definition s="stop all" type="command" category="control"><header></header><code></code><translations>ko:모두 멈추기&#xD;de:stoppe alles&#xD;pt:pare todos&#xD;fr:stop tout&#xD;nl:stop alle&#xD;zh_CN:停止 全部&#xD;zh_TW:停止 全部&#xD;ar:توقف الكل&#xD;dk:stop alle&#xD;he:להפסיק הכל&#xD;es:detener todo&#xD;ca:atura tot&#xD;fi:pysäytä kaikki&#xD;sv:stop allt&#xD;</translations><inputs></inputs><script><block s="doReport"><block s="reportURL"><block s="reportJoinWords"><list><l>http://127.0.0.1:30061/hummingbird/out/stopall</l></list></block></block></block></script></block-definition><block-definition s="Finch Move %&apos;direction&apos; %&apos;distance&apos; cm at %&apos;speed&apos; %" type="command" category="motion"><header></header><code></code><translations>ca:Finch Mou-te cap _ _ cm  a velocitat _ %&#xD;de:Finch Gehe _ _ cm mit _ %&#xD;es:Finch Mover hacia _ _ cm a velocidad _ %&#xD;fr:Finch Déplacer _ _ cm sur _ %&#xD;he:Finch זוז _ _ ס&apos;&apos;מ ב _ %&#xD;ko:Finch _ _ cm 로 움직이기 빠르기 _ %&#xD;nl:Finch Beweeg _ _ cm op _ %&#xD;pt:Finch Mova _ _ cm  a _ %&#xD;zh_CN:Finch 移动 _ _ cm 以 _ %&#xD;zh_TW:Finch 移動  _ _ 厘米在 _ %&#xD;</translations><inputs><input type="%txt" readonly="true">Forward<options>Forward&#xD;Backward</options></input><input type="%n">10</input><input type="%n">50</input></inputs><script><block s="doIf"><block s="reportLessThan"><block var="distance"/><l>-10000</l></block><script><block s="doSetVar"><l>distance</l><l>-10000</l></block></script></block><block s="doIf"><block s="reportGreaterThan"><block var="distance"/><l>10000</l></block><script><block s="doSetVar"><l>distance</l><l>10000</l></block></script></block><block s="doIf"><block s="reportLessThan"><block var="speed"/><l>0</l></block><script><block s="doSetVar"><l>speed</l><l>0</l></block></script></block><block s="doIf"><block s="reportGreaterThan"><block var="speed"/><l>100</l></block><script><block s="doSetVar"><l>speed</l><l>100</l></block></script></block><block s="doDeclareVariables"><list><l>wasMoving</l><l>isMoving</l><l>commandSendTime</l></list></block><block s="doSetVar"><l>isMoving</l><block s="reportURL"><l>http://127.0.0.1:30061/hummingbird/in/finchIsMoving/static/</l></block></block><block s="doSetVar"><l>wasMoving</l><block var="isMoving"/></block><block s="doSetVar"><l>commandSendTime</l><block s="reportDate"><l><option>time in milliseconds</option></l></block></block><block s="doRun"><block s="reifyReporter"><autolambda><block s="reportURL"><block s="reportJoinWords"><list><l>http://127.0.0.1:30061/hummingbird/out/move/A/</l><block var="direction"/><l>/</l><block var="distance"/><l>/</l><block var="speed"/></list></block></block></autolambda><list></list></block><list></list></block><block s="doUntil"><block s="reportOr"><block s="reportAnd"><block s="reportOr"><block s="reportEquals"><block var="wasMoving"/><l>true</l></block><block s="reportGreaterThan"><block s="reportDate"><l><option>time in milliseconds</option></l></block><block s="reportVariadicSum"><list><block var="commandSendTime"/><l>500</l></list></block></block></block><block s="reportEquals"><block var="isMoving"/><l>false</l></block></block><block s="reportEquals"><block var="isMoving"/><l>Not Connected</l></block></block><script><block s="doSetVar"><l>wasMoving</l><block var="isMoving"/></block><block s="doWait"><l>0.01</l></block><block s="doSetVar"><l>isMoving</l><block s="reportURL"><l>http://127.0.0.1:30061/hummingbird/in/finchIsMoving/static/</l></block></block></script></block><custom-block s="Finch Stop"><comment w="170" collapsed="true">Compensate for firmware bug</comment></custom-block><block s="doWait"><l>0.1</l></block></script></block-definition><block-definition s="Finch Turn %&apos;direction&apos; %&apos;angle&apos; ° at %&apos;speed&apos; %" type="command" category="motion"><header></header><code></code><translations>ca:Finch Gira cap a la _ _ ° a velocitat _ %&#xD;de:Finch Drehe _ _ ° mit _ %&#xD;es:Finch Girar hacia la _ _ ° a velocidad _ %&#xD;fr:Finch Tournez _ _ ° à _ %&#xD;he:Finch הסתובב _ _ מעלות ב _ %&#xD;ko:Finch _ _ ° 로 회전하기 빠르기 _ %&#xD;nl:Finch Draai _ _ ° op _ %&#xD;pt:Finch Gire _ _ ° a _ %&#xD;zh_CN:Finch 转动 _ _ ° 以 _ %&#xD;zh_TW:Finch 轉動 _ _ °在 _ %&#xD;</translations><inputs><input type="%txt" readonly="true">Right<options>Right&#xD;Left</options></input><input type="%n">90</input><input type="%n">50</input></inputs><script><block s="doIf"><block s="reportLessThan"><block var="angle"/><l>-360000</l></block><script><block s="doSetVar"><l>angle</l><l>-360000</l></block></script></block><block s="doIf"><block s="reportGreaterThan"><block var="angle"/><l>360000</l></block><script><block s="doSetVar"><l>angle</l><l>360000</l></block></script></block><block s="doIf"><block s="reportLessThan"><block var="speed"/><l>0</l></block><script><block s="doSetVar"><l>speed</l><l>0</l></block></script></block><block s="doIf"><block s="reportGreaterThan"><block var="speed"/><l>100</l></block><script><block s="doSetVar"><l>speed</l><l>100</l></block></script></block><block s="doDeclareVariables"><list><l>wasMoving</l><l>isMoving</l><l>commandSendTime</l></list></block><block s="doSetVar"><l>isMoving</l><block s="reportURL"><l>http://127.0.0.1:30061/hummingbird/in/finchIsMoving/static/</l></block></block><block s="doSetVar"><l>wasMoving</l><block var="isMoving"/></block><block s="doSetVar"><l>commandSendTime</l><block s="reportDate"><l><option>time in milliseconds</option></l></block></block><block s="doRun"><block s="reifyReporter"><autolambda><block s="reportURL"><block s="reportJoinWords"><list><l>http://127.0.0.1:30061/hummingbird/out/turn/A/</l><block var="direction"/><l>/</l><block var="angle"/><l>/</l><block var="speed"/></list></block></block></autolambda><list></list></block><list></list></block><block s="doUntil"><block s="reportOr"><block s="reportAnd"><block s="reportOr"><block s="reportEquals"><block var="wasMoving"/><l>true</l></block><block s="reportGreaterThan"><block s="reportDate"><l><option>time in milliseconds</option></l></block><block s="reportVariadicSum"><list><block var="commandSendTime"/><l>500</l></list></block></block></block><block s="reportEquals"><block var="isMoving"/><l>false</l></block></block><block s="reportEquals"><block var="isMoving"/><l>Not Connected</l></block></block><script><block s="doSetVar"><l>wasMoving</l><block var="isMoving"/></block><block s="doWait"><l>0.01</l></block><block s="doSetVar"><l>isMoving</l><block s="reportURL"><l>http://127.0.0.1:30061/hummingbird/in/finchIsMoving/static/</l></block></block></script></block><custom-block s="Finch Stop"><comment w="170" collapsed="true">Compensate for firmware bug</comment></custom-block><block s="doWait"><l>0.1</l></block></script></block-definition><block-definition s="Finch Wheels L %&apos;left&apos; % R %&apos;right&apos; %" type="command" category="motion"><header></header><code></code><translations>ca:Finch Posa les rodes a velocitat E _ % D _ %&#xD;de:Finch Räder L _ % R _ %&#xD;es:Finch Poner las ruedas a velocidad I _ % D _ %&#xD;fr:Finch Roues L _ % R _ %&#xD;he:Finch גלגלים שמאל _ % ימין _ %&#xD;ko:Finch 바퀴 왼쪽 _ % 오른쪽 _ %&#xD;nl:Finch Wielen L _ % R _ %&#xD;pt:Finch Rodas E _ % D _ %&#xD;zh_CN:Finch 左轮 _ % 右轮 _ %&#xD;zh_TW:Finch 車輪  左 _ % 右 _ %&#xD;</translations><inputs><input type="%n">0</input><input type="%n">0</input></inputs><script><block s="doIf"><block s="reportLessThan"><block var="left"/><l>-100</l></block><script><block s="doSetVar"><l>left</l><l>-100</l></block></script></block><block s="doIf"><block s="reportGreaterThan"><block var="left"/><l>100</l></block><script><block s="doSetVar"><l>left</l><l>100</l></block></script></block><block s="doIf"><block s="reportLessThan"><block var="right"/><l>-100</l></block><script><block s="doSetVar"><l>right</l><l>-100</l></block></script></block><block s="doIf"><block s="reportGreaterThan"><block var="right"/><l>100</l></block><script><block s="doSetVar"><l>right</l><l>100</l></block></script></block><block s="doDeclareVariables"><list><l>response</l></list><comment w="228" collapsed="true">Storing the url response in a variable forces the block to wait for a response before returning.</comment></block><block s="doSetVar"><l>response</l><block s="reportURL"><block s="reportJoinWords"><list><l>http://127.0.0.1:30061/hummingbird/out/wheels/A/</l><block var="left"/><l>/</l><block var="right"/></list></block></block></block></script></block-definition><block-definition s="Finch Stop" type="command" category="motion"><header></header><code></code><translations>ca:Finch Atura&#xD;de:Finch Stoppe&#xD;es:Finch Detener&#xD;fr:Finch Stop&#xD;he:Finch להפסיק&#xD;ko:Finch 멈추기&#xD;nl:Finch Stop&#xD;pt:Finch Pare&#xD;zh_CN:Finch 停止&#xD;zh_TW:Finch 停止&#xD;</translations><inputs></inputs><script><block s="doDeclareVariables"><list><l>response</l></list><comment w="228" collapsed="true">Storing the url response in a variable forces the block to wait for a response before returning.</comment></block><block s="doSetVar"><l>response</l><block s="reportURL"><block s="reportJoinWords"><list><l>http://127.0.0.1:30061/hummingbird/out/stopFinch/A/</l></list></block></block></block></script></block-definition><block-definition s="Finch Beak R %&apos;redLED&apos; % G %&apos;greenLED&apos; % B %&apos;blueLED&apos; %" type="command" category="looks"><header></header><code></code><translations>ca:Finch Encén el bec de color R _ % G _ % B _ %&#xD;de:Finch Schnabel R _ % G _ % B _ %&#xD;es:Finch Encender el pico de color R _ % V _ % A _ %&#xD;fr:Finch Bec R _ % G _ % B _ %&#xD;he:Finch מקור אדום _ % ירוק _ % כחול _ %&#xD;ko:Finch 부리 빨강 _ % 초록 _ % 파랑 _ %&#xD;nl:Finch Bek R _ % G _ % B _ %&#xD;pt:Finch Bico R _ % G _ % B _ %&#xD;zh_CN:Finch 鸟喙 R _ % G _ % B _ %&#xD;zh_TW:Finch 鳥嘴 紅 _ % 綠 _ % 藍 _ %&#xD;</translations><inputs><input type="%n">0</input><input type="%n">0</input><input type="%n">0</input></inputs><script><block s="doIf"><block s="reportLessThan"><block var="redLED"/><l>0</l></block><script><block s="doSetVar"><l>redLED</l><l>0</l></block></script></block><block s="doIf"><block s="reportGreaterThan"><block var="redLED"/><l>100</l></block><script><block s="doSetVar"><l>redLED</l><l>100</l></block></script></block><block s="doIf"><block s="reportLessThan"><block var="greenLED"/><l>0</l></block><script><block s="doSetVar"><l>greenLED</l><l>0</l></block></script></block><block s="doIf"><block s="reportGreaterThan"><block var="greenLED"/><l>100</l></block><script><block s="doSetVar"><l>greenLED</l><l>100</l></block></script></block><block s="doIf"><block s="reportLessThan"><block var="blueLED"/><l>0</l></block><script><block s="doSetVar"><l>blueLED</l><l>0</l></block></script></block><block s="doIf"><block s="reportGreaterThan"><block var="blueLED"/><l>100</l></block><script><block s="doSetVar"><l>blueLED</l><l>100</l></block></script></block><block s="doSetVar"><l>redLED</l><block s="reportRound"><block s="reportVariadicProduct"><list><block var="redLED"/><l>2.55</l></list><comment w="90" collapsed="false">Scale factor 255/100</comment></block></block></block><block s="doSetVar"><l>blueLED</l><block s="reportRound"><block s="reportVariadicProduct"><list><block var="blueLED"/><l>2.55</l></list><comment w="90" collapsed="false">Scale factor 255/100</comment></block></block></block><block s="doSetVar"><l>greenLED</l><block s="reportRound"><block s="reportVariadicProduct"><list><block var="greenLED"/><l>2.55</l></list><comment w="90" collapsed="false">Scale factor 255/100</comment></block></block></block><block s="doDeclareVariables"><list><l>response</l></list><comment w="228" collapsed="true">Storing the url response in a variable forces the block to wait for a response before returning.</comment></block><block s="doSetVar"><l>response</l><block s="reportURL"><block s="reportJoinWords"><list><l>http://127.0.0.1:30061/hummingbird/out/triled/1/</l><block var="redLED"/><l>/</l><block var="greenLED"/><l>/</l><block var="blueLED"/></list></block></block></block></script></block-definition><block-definition s="Finch Tail %&apos;port&apos; R %&apos;redLED&apos; % G %&apos;greenLED&apos; % B %&apos;blueLED&apos; %" type="command" category="looks"><header></header><code></code><translations>ca:Finch Encén la cua de color _ R _ % G _ % B _ %&#xD;de:Finch Schwanz _ R _ % G _ % B _ %&#xD;es:Finch Encender la cola de color _ R _ % V _ % A _ %&#xD;fr:Finch Queue _ R _ % G _ % B _ %&#xD;he:Finch זנב _ אדום _ % ירוק _ % כחול _ %&#xD;ko:Finch 꼬리 _ 빨강 _ % 초록 _ % 파랑 _ %&#xD;nl:Finch Staart _ R _ % G _ % B _ %&#xD;pt:Finch Cauda _ R _ % G _ % B _ %&#xD;zh_CN:Finch 鸟尾 _ R _ % G _ % B _ %&#xD;zh_TW:Finch 尾巴 _ 紅 _ % 綠 _ % 藍 _ %&#xD;</translations><inputs><input type="%txt" readonly="true">all<options>all&#xD;1&#xD;2&#xD;3&#xD;4</options></input><input type="%n">0</input><input type="%n">0</input><input type="%n">0</input></inputs><script><block s="doIf"><block s="reportNot"><block s="reportEquals"><block var="port"/><l>all</l></block></block><script><block s="doSetVar"><l>port</l><block s="reportVariadicSum"><list><block var="port"/><l>1</l></list></block></block></script></block><block s="doIf"><block s="reportLessThan"><block var="redLED"/><l>0</l></block><script><block s="doSetVar"><l>redLED</l><l>0</l></block></script></block><block s="doIf"><block s="reportGreaterThan"><block var="redLED"/><l>100</l></block><script><block s="doSetVar"><l>redLED</l><l>100</l></block></script></block><block s="doIf"><block s="reportLessThan"><block var="greenLED"/><l>0</l></block><script><block s="doSetVar"><l>greenLED</l><l>0</l></block></script></block><block s="doIf"><block s="reportGreaterThan"><block var="greenLED"/><l>100</l></block><script><block s="doSetVar"><l>greenLED</l><l>100</l></block></script></block><block s="doIf"><block s="reportLessThan"><block var="blueLED"/><l>0</l></block><script><block s="doSetVar"><l>blueLED</l><l>0</l></block></script></block><block s="doIf"><block s="reportGreaterThan"><block var="blueLED"/><l>100</l></block><script><block s="doSetVar"><l>blueLED</l><l>100</l></block></script></block><block s="doSetVar"><l>redLED</l><block s="reportRound"><block s="reportVariadicProduct"><list><block var="redLED"/><l>2.55</l></list><comment w="90" collapsed="false">Scale factor 255/100</comment></block></block></block><block s="doSetVar"><l>blueLED</l><block s="reportRound"><block s="reportVariadicProduct"><list><block var="blueLED"/><l>2.55</l></list><comment w="90" collapsed="false">Scale factor 255/100</comment></block></block></block><block s="doSetVar"><l>greenLED</l><block s="reportRound"><block s="reportVariadicProduct"><list><block var="greenLED"/><l>2.55</l></list><comment w="90" collapsed="false">Scale factor 255/100</comment></block></block></block><block s="doDeclareVariables"><list><l>response</l></list><comment w="228" collapsed="true">Storing the url response in a variable forces the block to wait for a response before returning.</comment></block><block s="doSetVar"><l>response</l><block s="reportURL"><block s="reportJoinWords"><list><l>http://127.0.0.1:30061/hummingbird/out/triled/</l><block var="port"/><l>/</l><block var="redLED"/><l>/</l><block var="greenLED"/><l>/</l><block var="blueLED"/></list></block></block></block></script></block-definition><block-definition s="micro:bit Print %&apos;string&apos;" type="command" category="looks"><header></header><code></code><translations>ko:micro:bit 출력 _&#xD;de:micro:bit Drucke _&#xD;pt:micro:bit Imprimir _&#xD;fr:micro:bit Imprimer _&#xD;nl:micro:bit Schrijf _&#xD;zh_CN:micro:bit 打印 _&#xD;zh_TW:micro:bit 打印 _&#xD;ar:micro:bit طباعة _&#xD;dk:micro:bit Vis _&#xD;he:micro:bit הדפס _&#xD;es:micro:bit Imprimir _&#xD;ca:micro:bit Escriu _&#xD;fi:micro:bit Näytä teksti _&#xD;sv:micro:bit Visa text _&#xD;</translations><inputs><input type="%txt">Hello</input></inputs><script><block s="doRun"><block s="reifyReporter"><autolambda><block s="reportURL"><block s="reportJoinWords"><list><l>http://127.0.0.1:30061/hummingbird/out/print/</l><block var="string"/></list></block></block></autolambda><list></list></block><list></list></block><block s="doWait"><block s="reportVariadicProduct"><list><block s="reportStringSize"><block var="string"/></block><l>0.6</l></list></block></block></script></block-definition><block-definition s="micro:bit Display $nl %&apos;11&apos; %&apos;12&apos; %&apos;13&apos; %&apos;14&apos; %&apos;15&apos; $nl %&apos;21&apos; %&apos;22&apos; %&apos;23&apos; %&apos;24&apos; %&apos;25&apos; $nl %&apos;31&apos; %&apos;32&apos; %&apos;33&apos; %&apos;34&apos; %&apos;35&apos; $nl %&apos;41&apos; %&apos;42&apos; %&apos;43&apos; %&apos;44&apos; %&apos;45&apos; $nl %&apos;51&apos; %&apos;52&apos; %&apos;53&apos; %&apos;54&apos; %&apos;55&apos;" type="command" category="looks"><header></header><code></code><translations>ko:micro:bit 보이기 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _&#xD;de:micro:bit LED Anzeige _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _&#xD;pt:micro:bit Visor _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _&#xD;fr:micro:bit Display _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _&#xD;nl:micro:bit Scherm _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _&#xD;zh_CN:micro:bit 显示 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _&#xD;zh_TW:micro:bit 顯示 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _&#xD;ar:micro:bit عرض _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _&#xD;dk:micro:bit Display _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _&#xD;he:micro:bit מסך _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _&#xD;es:micro:bit Monitor _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _&#xD;ca:micro:bit Pantalla _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _&#xD;fi:micro:bit Näytä _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _&#xD;sv:micro:bit Skärm _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _&#xD;</translations><inputs><input type="%b">false</input><input type="%b">false</input><input type="%b">false</input><input type="%b">false</input><input type="%b">false</input><input type="%b">false</input><input type="%b">false</input><input type="%b">false</input><input type="%b">false</input><input type="%b">false</input><input type="%b">false</input><input type="%b">false</input><input type="%b">false</input><input type="%b">false</input><input type="%b">false</input><input type="%b">false</input><input type="%b">false</input><input type="%b">false</input><input type="%b">false</input><input type="%b">false</input><input type="%b">false</input><input type="%b">false</input><input type="%b">false</input><input type="%b">false</input><input type="%b">false</input></inputs><script><block s="doDeclareVariables"><list><l>response</l></list><comment w="228" collapsed="true">Storing the url response in a variable forces the block to wait for a response before returning.</comment></block><block s="doSetVar"><l>response</l><block s="reportURL"><block s="reportJoinWords"><list><l>http://127.0.0.1:30061/hummingbird/out/symbol/A/</l><block var="11"/><l>/</l><block var="12"/><l>/</l><block var="13"/><l>/</l><block var="14"/><l>/</l><block var="15"/><l>/</l><block var="21"/><l>/</l><block var="22"/><l>/</l><block var="23"/><l>/</l><block var="24"/><l>/</l><block var="25"/><l>/</l><block var="31"/><l>/</l><block var="32"/><l>/</l><block var="33"/><l>/</l><block var="34"/><l>/</l><block var="35"/><l>/</l><block var="41"/><l>/</l><block var="42"/><l>/</l><block var="43"/><l>/</l><block var="44"/><l>/</l><block var="45"/><l>/</l><block var="51"/><l>/</l><block var="52"/><l>/</l><block var="53"/><l>/</l><block var="54"/><l>/</l><block var="55"/></list></block></block></block></script></block-definition></blocks><stage name="Stage" width="480" height="360" costume="0" color="255,255,255,1" tempo="60" threadsafe="false" penlog="false" volume="100" pan="0" lines="round" ternary="true" hyperops="true" codify="false" inheritance="true" sublistIDs="false" id="1111"><pentrails>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==</pentrails><costumes><list struct="atomic" id="1112"></list></costumes><sounds><list struct="atomic" id="1113"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites select="1"><sprite name="Sprite" idx="1" x="0" y="2.842170943040401e-14" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="0" color="80,80,80,1" pen="tip" id="1118"><costumes><list struct="atomic" id="1119"></list></costumes><sounds><list struct="atomic" id="1120"></list></sounds><blocks></blocks><variables></variables><scripts><script x="31.123046875" y="10"><block s="receiveKey"><l><option>s</option></l><list></list><comment w="90" collapsed="false">Run this when you open the project.</comment></block><block s="doSetVar"><l>URL</l><l>https://teachablemachine.withgoogle.com/models/YPUhH2tXy/</l></block><custom-block s="Load Libraries"></custom-block><custom-block s="Load Model %txt"><block var="URL"/></custom-block></script><script x="30.408761160714278" y="125.02380952380943"><block s="receiveKey"><l><option>space</option></l><list></list></block><custom-block s="Predict"><comment w="178" collapsed="false">When you run this the first time, it will take a minute to start predicting. Press x to stop predicting. </comment></custom-block></script><script x="33" y="259.2857142857142"><block s="receiveKey"><l><option>space</option></l><list></list></block><block s="doUntil"><block s="reportKeyPressed"><l><option>x</option></l></block><script><block s="doIf"><block s="reportGreaterThan"><block s="reportListItem"><l>1</l><block var="Prediction"/></block><l>.9</l></block><script><custom-block s="Finch Stop"></custom-block></script></block><block s="doIf"><block s="reportGreaterThan"><block s="reportListItem"><l>2</l><block var="Prediction"/></block><l>.9</l></block><script><custom-block s="Finch Move %txt %n cm at %n %"><l>Backward</l><l>10</l><l>50</l></custom-block></script></block><block s="doIf"><block s="reportGreaterThan"><block s="reportListItem"><l>3</l><block var="Prediction"/></block><l>.9</l></block><script><custom-block s="Finch Move %txt %n cm at %n %"><l>Forward</l><l>10</l><l>50</l></custom-block></script></block></script></block></script></scripts></sprite><watcher var="URL" style="normal" x="10" y="10" color="243,118,29"/><watcher var="PredictionTable" style="normal" x="9" y="43" color="243,118,29" extX="128.5615234375" extY="69"/><watcher var="Prediction" style="normal" x="9" y="148" color="243,118,29" extX="80" extY="70"/></sprites></stage><variables><variable name="URL"><l>https://teachablemachine.withgoogle.com/models/YPUhH2tXy/</l></variable><variable name="PredictionTable"><list id="1192"><item><list struct="atomic" id="1193">Background Noise,0.7109013795852661</list></item><item><list struct="atomic" id="1194">go back,0.2751767039299011</list></item><item><list struct="atomic" id="1195">move forward,0.013921918347477913</list></item></list></variable><variable name="Prediction"><list struct="atomic" id="1196">0.7109013795852661,0.2751767039299011,0.013921918347477913</list></variable></variables></scene></scenes></project><media name="MachineLearningAudioFinch3" app="Snap! 7, https://snap.berkeley.edu" version="2"></media></snapdata>