<snapdata remixID="11506886"><project name="AI-MachineLearningVideoFinch" 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="AI-MachineLearningVideoFinch"><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/@teachablemachine/image@0.8/dist/teachablemachine-image.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 when_loaded = (loaded_model) =&gt; {&#xD;  console.log("loading model")&#xD;  window.imageModel = loaded_model;&#xD;};&#xD;&#xD;const modelURL = URL + "model.json"; // model topology&#xD;const metadataURL = URL + "metadata.json"; // model metadata&#xD;&#xD;const recognizer = tmImage.load(modelURL, metadataURL).then(when_loaded);     </l></block><list><block var="URL"/></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="doUntil"><block s="reportKeyPressed"><l><option>x</option></l></block><script><block s="doRun"><block s="reportJSFunction"><list><l>videoCapture</l></list><l>const report_predictions = (prediction) =&gt; {&#xD;   let class_names = window.imageModel.getClassLabels();&#xD;   let names_and_scores = prediction.map((score, index) =&gt; [class_names[index], score.probability]);&#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;};&#xD;&#xD;const prediction = window.imageModel.predict(videoCapture.contents).then(report_predictions);   &#xD;//console.log(prediction)        </l></block><list><block s="reportVideo"><l><option>snap</option></l><l>Stage</l></block></list></block><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></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="242" 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="227.99999999999997" 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="227.99999999999997" 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="227.99999999999997" 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="227.99999999999997" 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="227.99999999999997" 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="1098"><pentrails>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAOhUlEQVR4Xu3VwQkAAAjEMN1/abewn7jAQRC64wgQIECAAIF3gX1fNEiAAAECBAiMAHsCAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+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+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQIHLFxAWmhEwHPAAAAAElFTkSuQmCC</pentrails><costumes><list struct="atomic" id="1099"></list></costumes><sounds><list struct="atomic" id="1100"></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="1105"><costumes><list struct="atomic" id="1106"></list></costumes><sounds><list struct="atomic" id="1107"></list></sounds><blocks></blocks><variables></variables><scripts><script x="23.976190476190425" 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/ie1pVmXpOv/</l></block><custom-block s="Load Libraries"></custom-block><custom-block s="Load Model %txt"><block var="URL"/></custom-block></script><script x="23.26190476190473" y="116.0238095238094"><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="27.571428571428555" y="268.54761904761887"><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 Move %txt %n cm at %n %"><l>Forward</l><l>10</l><l>50</l></custom-block></script></block></script></block></script><comment x="614" y="62" w="238" collapsed="false">1) Turn on JavaScript&#xD;2) Teachable machine: Upload my Model&#xD;3) TM: Copy the cloud link&#xD;4) Put link into URL&#xD;5) Hit S to load model&#xD;6) Press &quot;Space&quot; and allow it to use video&#xD;</comment></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.56152343750023" extY="86"/><watcher var="Prediction" style="normal" x="9" y="159" color="243,118,29" extX="80" extY="70"/></sprites></stage><variables><variable name="URL"><l>https://teachablemachine.withgoogle.com/models/ie1pVmXpOv/</l></variable><variable name="PredictionTable"><list id="1154"><item><list struct="atomic" id="1155">Mandalorian,0.07972058653831482</list></item><item><list struct="atomic" id="1156">Darth Vader,0.0028263884596526623</list></item><item><list struct="atomic" id="1157">Grogu,0.783893346786499</list></item><item><list struct="atomic" id="1158">None,0.13355973362922668</list></item></list></variable><variable name="Prediction"><list struct="atomic" id="1159">0.07972058653831482,0.0028263884596526623,0.783893346786499,0.13355973362922668</list></variable></variables></scene></scenes></project><media name="AI-MachineLearningVideoFinch" app="Snap! 7, https://snap.berkeley.edu" version="2"></media></snapdata>