<snapdata remixID="11504904"><project name="Scipt" app="Snap! 7, https://snap.berkeley.edu" version="2"><notes>Really advanced project with IS WEIRD? and news KISS blocks.&#xD;Look inside, there&apos;s a variable called COMPASSIONS in OS, while compassion is a value.&#xD;chriscreators14 won&apos;t talk except you say sorry if you make him mad by typing his username in the what&apos;s your name question</notes><thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAAAAXNSR0IArs4c6QAAAwhJREFUeF7t3blqlGEYhuFvEIKtRBgEF1waIXYKguCGjY37gjapAsEFbRQ8HI/A2s5YBE8jlaQJYiMiMmIaLbSYae4i19T/+z9wz8W0M5nNZrPho0BUYAJgVN7sbgEAQUgLAJjmNw4gA2kBANP8xgFkIC0AYJrfOIAMpAUATPMbB5CBtACAaX7jADKQFgAwzW8cQAbSAgCm+Y0DyEBaAMA0v3EAGUgLAJjmNw4gA2kBANP8xgFkIC0AYJrfOIAMpAUATPMbB5CBtACAaX7jADKQFgAwzW8cQAbSAgCm+Y0DyEBaAMA0v3EAGUgLAJjmNw4gA2kBANP8xgFkIC0A4Jz5f/+rxWQymfPK4/8rAOACNi5cez1OnTw8ThzZP9bXbo7pdLrAW5z8LgDgAg62trbG6XOvxrcfB3av9+/7PJ6uPxrHDn0fz56s+oWcoymAc8T6+9EPG5vjyq23/7w+Ov06nq5dHS+fr46lpaUFF/bGGYALfs+Xr78ZG592/lz/3Bmrjy+O40eWxrP1e2N5eXnBN++tMwAX+L7vPHwx3r3/Mi6dPziuXDw77t44M1ZWVhZ4kxMA5zSwvb09Nj5ujgf3b8956fF/FQCQi7QAgGl+4wAykBYAMM1vHEAG0gIApvmNA8hAWgDANL9xABlICwCY5jcOIANpAQDT/MYBZCAtAGCa3ziADKQFAEzzGweQgbQAgGl+4wAykBYAMM1vHEAG0gIApvmNA8hAWgDANL9xABlICwCY5jcOIANpAQDT/MYBZCAtAGCa3ziADKQFAEzzGweQgbQAgGl+4wAykBYAMM1vHEAG0gIApvmNA8hAWgDANL9xABlICwCY5jcOIANpAQDT/MYBZCAtAGCa3ziADKQFAEzzGweQgbQAgGl+4wAykBYAMM1vHEAG0gIApvmNA8hAWgDANL9xABlICwCY5jcOIANpAQDT/MYBZCAtAGCa3ziADKQFAEzzGweQgbQAgGl+4wAykBYAMM1vHEAG0gIApvmNA8hAWgDANL9xABlICwCY5jf+Cx1NCbd96L3fAAAAAElFTkSuQmCC</thumbnail><scenes select="1"><scene name="Scipt" palette="single"><notes>Really advanced project with IS WEIRD? and news KISS blocks.&#xD;Look inside, there&apos;s a variable called COMPASSIONS in OS, while compassion is a value.&#xD;chriscreators14 won&apos;t talk except you say sorry if you make him mad by typing his username in the what&apos;s your name question</notes><palette><category name="Runtime, Sensors, and More" color="0,116,143,1"/></palette><hidden></hidden><headers></headers><code></code><blocks><block-definition s="safely try %&apos;action&apos; then if %&apos;error&apos; %&apos;handler&apos;" type="command" category="control"><comment x="0" y="0" w="276" collapsed="false">Catch errors.&#xD;&#xD;Runs the first script.  If it succeeds, nothing else happens.&#xD;But if it has an error (something that would otherwise result&#xD;in a red halo around the block), then the second script is run,&#xD;with the text of the error message that would have been shown in the variable ERROR.</comment><header></header><code></code><translations>pt:tenta executar _ e, em caso de erro _ , executa _&#xD;ca:prova de forma segura _ i si _ _&#xD;</translations><inputs><input type="%cs"></input><input type="%upvar"></input><input type="%cs"></input></inputs><script><block s="doApplyExtension"><l>err_try(cmd, catch, err)</l><list><block var="action"/><block var="handler"/><block var="error"/></list></block><block s="doApplyExtension"><l>err_reset</l><list></list></block></script></block-definition><block-definition s="error %&apos;msg&apos;" type="command" category="control"><comment x="0" y="0" w="268.6666666666667" collapsed="false">Throw an error.&#xD;&#xD;Makes a red halo appear around the script that runs it,&#xD;with the input text shown in a speech balloon next to&#xD;the script, just like any Snap! error.&#xD;&#xD;This is useful to put in the second script of SAFELY TRY&#xD;after some other instructions to undo the partial work of&#xD;the first script.</comment><header></header><code></code><translations>pt:lança o erro _&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doApplyExtension"><l>err_error(msg)</l><list><block s="reportJoinWords"><list><block s="reportGet"><l><option>name</option></l></block><l>&apos;s Error: </l><block var="msg"/></list></block></list></block></script></block-definition><block-definition s="safely try reporting %&apos;this&apos; then if %&apos;error&apos; report %&apos;that&apos;" type="reporter" category="control"><comment x="0" y="0" w="316.6666666666667" collapsed="false">Catch errors in a reporter.&#xD;&#xD;Evaluates its first input.  If that expression successfully reports a value, this block reports that value.  If the expression causes a Snap! error,&#xD;then the final input slot is evaluated with the text of what would have&#xD;been the error message in variable ERROR.  SAFELY TRY then reports the value of that final expression.&#xD;&#xD;Sometimes you&apos;ll want to throw an error in the final expression.  You&#xD;can put an ERROR block inside a CALL block to do that.</comment><header></header><code></code><translations>ca:prova de forma segura reportant _ i si _ reportant _&#xD;</translations><inputs><input type="%anyUE"></input><input type="%upvar"></input><input type="%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>value</l></list></block><custom-block s="safely try %cs then if %upvar %cs"><script><block s="doSetVar"><l>value</l><block s="evaluate"><block var="this"/><list></list></block></block></script><l>err</l><script><block s="doSetVar"><l>error</l><block var="err"/></block><block s="doSetVar"><l>value</l><block s="evaluate"><block var="that"/><list></list></block></block></script></custom-block><block s="doReport"><block var="value"/></block></script></block-definition><block-definition s="cases: if %&apos;test&apos; then %&apos;result&apos; %&apos;more&apos;" type="command" category="control"><comment x="0" y="0" w="262" collapsed="false">Multi-branched conditional.&#xD;&#xD;If the first (Boolean) input is True, then the script in&#xD;the second (C-slot) input is run, and this block stops.&#xD;&#xD;Additional tests can be added by putting one or more&#xD;ELSE IF blocks in the third (variadic) Boolean slot.&#xD;Use the arrowheads to get the number of Boolean&#xD;slots you need.  Each ELSE IF block provides a Boolean&#xD;slot for a condition to test and a script slot for what to do&#xD;if the condition is True.  You can put an ELSE block in&#xD;the last Boolean input to CASES for a script to run if&#xD;all the tests turn out False.&#xD;&#xD;As soon as a condition is True, no further tests are done&#xD;and no further scripts are run.</comment><header></header><code></code><translations>pt:se _ , então _ _&#xD;ca:casos: si _ llavors _ _&#xD;</translations><inputs><input type="%b"></input><input type="%cs"></input><input type="%mult%boolUE"></input></inputs><script><block s="doIfElse"><block var="test"/><script><block s="doRun"><block var="result"/><list></list></block></script><script><custom-block s="catch %upvar %cs"><l>tag</l><script><block s="doForEach"><l>item</l><block var="more"/><script><block s="doIf"><block s="evaluate"><block var="item"/><list></list></block><script><custom-block s="throw %s"><block var="tag"/></custom-block></script></block></script></block></script></custom-block></script></block></script></block-definition><block-definition s="else if %&apos;test&apos; then %&apos;action&apos;" type="predicate" category="control"><comment x="0" y="0" w="176" collapsed="false">For use with the CASES block.&#xD;See its help message.</comment><header></header><code></code><translations>pt:senão, se _ , então _&#xD;ca:altrament si _ llavors _&#xD;</translations><inputs><input type="%b"></input><input type="%cs"></input></inputs><script><block s="doIfElse"><block var="test"/><script><block s="doRun"><block var="action"/><list></list></block><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="else %&apos;action&apos;" type="predicate" category="control"><comment x="0" y="0" w="176" collapsed="false">For use with the CASES block.&#xD;See its help message.</comment><header></header><code></code><translations>pt:senão, _&#xD;ca:si no _&#xD;</translations><inputs><input type="%cs"></input></inputs><script><block s="doRun"><block var="action"/><list></list></block><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></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;pt:captura _ _&#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></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;pt:lança _&#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;pt:captura _ _&#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;pt:lança _ _&#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="if %&apos;test&apos; do %&apos;action&apos; and pause all $pause-1-255-220-0" type="command" category="control"><comment x="0" y="0" w="263.3333333333333" collapsed="false">This is a breakpoint block, to be used in debugging.&#xD;The Boolean input specifies the condition under which&#xD;the program should pause.  (Use True for an unconditional breakpoint.)  The intent is that the script should have&#xD;SHOW VARIABLE blocks for the process&apos;s local variables.&#xD;After the pause, this block automatically hides all temporary variables.</comment><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;pt:se _ , então _ e faz pausa em tudo $pause-1-255-220-0&#xD;</translations><inputs><input type="%boolUE"></input><input type="%cs"></input></inputs><script><block s="doDeclareVariables"><list><l>breakpoint</l></list></block><block s="doIf"><block s="evaluate"><block var="test"/><list></list></block><script><block s="doSetVar"><l>breakpoint</l><block var="test"/></block><block s="doShowVar"><l>breakpoint</l></block><block s="doRun"><block var="action"/><list></list></block><block s="doPauseAll"></block><block s="doHideVar"><l></l></block></script></block></script></block-definition><block-definition s="comment %&apos;x&apos;" type="command" category="other"><comment x="0" y="0" w="206.66666666666666" collapsed="false">This block does nothing.&#xD;Use it when you are calling a reporter&#xD;for its side effect and don&apos;t care about&#xD;its return value.</comment><header></header><code></code><translations>de:ignoriere _&#xD;ca:ignora _&#xD;es:ignorar _&#xD;fr:ignore _&#xD;pt:ignora _&#xD;</translations><inputs><input type="%mult%s"></input></inputs></block-definition><block-definition s="cascade %&apos;num&apos; times %&apos;function&apos; %&apos;init&apos; %&apos;#&apos;" type="reporter" category="control"><comment x="0" y="0" w="138" collapsed="false">Call f(f(f(...(f(x))))) n times where the three input slots are n, f, and x from left to right.  The # variable can be used inside f to represent how many times f has been called.</comment><header></header><code></code><translations>pt:o resultado de _ invocações em cascata de _ com argumento inicial _ _&#xD;ca:en cascada _ vegades _ _ _&#xD;</translations><inputs><input type="%n"></input><input type="%repRing"></input><input type="%s"></input><input type="%upvar"></input></inputs><script><block s="doDeclareVariables"><list><l>result</l></list></block><block s="doSetVar"><l>result</l><block var="init"/></block><block s="doSetVar"><l>#</l><l>0</l></block><block s="doRepeat"><block var="num"/><script><block s="doChangeVar"><l>#</l><l>1</l></block><block s="doSetVar"><l>result</l><block s="evaluate"><block var="function"/><list><block var="result"/></list></block></block></script></block><block s="doReport"><block var="result"/></block></script></block-definition><block-definition s="cascade until %&apos;pred&apos; %&apos;function&apos; %&apos;init&apos; %&apos;#&apos;" type="reporter" category="control"><comment x="0" y="0" w="210.47493489583334" collapsed="false">Call f(f(f(...(f(x))))) until condition is true, where the three input slots are condition, f, and x from left to right.  The # variable can be used inside f or condition to indicate how many times f has been called.</comment><header></header><code></code><translations>pt:o resultado da invocação em cascata até que _ de _ com argumento inicial _ _&#xD;ca:en cascada fins _ _ _ _&#xD;</translations><inputs><input type="%predRing"></input><input type="%repRing"></input><input type="%s"></input><input type="%upvar"></input></inputs><script><block s="doDeclareVariables"><list><l>result</l></list></block><block s="doSetVar"><l>result</l><block var="init"/></block><block s="doSetVar"><l>#</l><l>0</l></block><block s="doUntil"><block s="evaluate"><block var="pred"/><list><block var="result"/></list></block><script><block s="doChangeVar"><l>#</l><l>1</l></block><block s="doSetVar"><l>result</l><block s="evaluate"><block var="function"/><list><block var="result"/></list></block></block></script></block><block s="doReport"><block var="result"/></block></script></block-definition><block-definition s="compose %&apos;f&apos; %&apos;g&apos;" type="reporter" category="control"><comment x="0" y="0" w="151.33333333333334" collapsed="false">Returns the function x↦f(g(x)) where f and g are the two inputs.</comment><header></header><code></code><translations>pt:a composição de _ com _&#xD;ca:composa _ _&#xD;</translations><inputs><input type="%repRing"></input><input type="%repRing"></input></inputs><script><block s="doReport"><block s="reifyReporter"><autolambda><block s="evaluate"><block var="f"/><list><block s="evaluate"><block var="g"/><list><l></l></list></block></list></block></autolambda><list></list></block></block></script></block-definition><block-definition s="repeat %&apos;action&apos; until %&apos;pred&apos;" type="command" category="control"><comment x="0" y="0" w="202.66666666666666" collapsed="false">Like the built-in REPEAT UNTIL block, except that the ending condition is not tested until the script has been run the first time.  So the script is run at least once.</comment><header></header><code></code><translations>pt:repete _ até que _ $loop-0.7&#xD;ca:repeteix _ fins _&#xD;</translations><inputs><input type="%cs"></input><input type="%boolUE"></input></inputs><script><block s="doRun"><block var="action"/><list></list></block><block s="doUntil"><block s="evaluate"><block var="pred"/><list></list></block><script><block s="doRun"><block var="action"/><list></list></block></script></block></script></block-definition><block-definition s="repeat %&apos;action&apos; while %&apos;pred&apos;" type="command" category="control"><comment x="0" y="0" w="287.3333333333333" collapsed="false">Run the script repeatedly, as long as the given condition is true.  Runs the script at least once before testing the condition.</comment><header></header><code></code><translations>pt:repete _ enquanto _ $loop-0.7&#xD;ca:repeteix _ mentre _&#xD;</translations><inputs><input type="%cs"></input><input type="%boolUE"></input></inputs><script><block s="doRun"><block var="action"/><list></list></block><block s="doUntil"><block s="reportNot"><block s="evaluate"><block var="pred"/><list></list></block></block><script><block s="doRun"><block var="action"/><list></list></block></script></block></script></block-definition><block-definition s="while %&apos;pred&apos; %&apos;action&apos;" type="command" category="control"><comment x="0" y="0" w="264" collapsed="false">Runs the script repeatedly, as long as the condition is true. Tests the condition before the first time the script is run.  Like the built in REPEAT UNTIL except that in this block the condition must be true, not false.</comment><header></header><code></code><translations>pt:enquanto _ , repete _ $loop-0.7&#xD;</translations><inputs><input type="%boolUE"></input><input type="%cs"></input></inputs><script><block s="doUntil"><block s="reportNot"><block s="evaluate"><block var="pred"/><list></list></block></block><script><block s="doRun"><block var="action"/><list></list></block></script></block></script></block-definition><block-definition s="repeat %&apos;num&apos; %&apos;#&apos; %&apos;action&apos;" type="command" category="control"><comment x="0" y="0" w="171" collapsed="false">Runs the script the specified number of times, like the built-in REPEAT block, but this one provides the # variable that can be used inside the script.  Try&#xD;REPEAT (200)&#xD;                MOVE (#) STEPS&#xD;   RIGHT 92&#xD;with the pen down.</comment><header></header><code></code><translations>pt:repete _ vezes _ _ $loop-0.7&#xD;ca:repeteix _ _ _&#xD;</translations><inputs><input type="%n"></input><input type="%upvar"></input><input type="%cs"></input></inputs><script><block s="doSetVar"><l>#</l><l>0</l></block><block s="doRepeat"><block var="num"/><script><block s="doChangeVar"><l>#</l><l>1</l></block><block s="doRun"><block var="action"/><list></list></block></script></block></script></block-definition><block-definition s="for %&apos;i&apos; = %&apos;start&apos; step %&apos;step&apos; to %&apos;end&apos; %&apos;action&apos;" type="command" category="control"><comment x="0" y="0" w="247.33333333333334" collapsed="false">The primitive FOR block uses an implicit step of ±1 depending on which of the starting and ending values is larger.  This version allows you to provide an explicit step value.  If the sign of the step input is incompatible with the ordering of the starting and ending values, the script will not be run at all.</comment><header></header><code></code><translations>pt:para _ de _ com passo _ a _ _ $loop-0.7&#xD;ca:per _ = _ incrementant _ fins _ _&#xD;</translations><inputs><input type="%upvar"></input><input type="%n">1</input><input type="%n">1</input><input type="%n">10</input><input type="%cs"></input></inputs><script><block s="doDeclareVariables"><list><l>test</l></list></block><block s="doSetVar"><l>i</l><block var="start"/></block><block s="doIfElse"><block s="reportLessThan"><block var="step"/><l>0</l></block><script><block s="doSetVar"><l>test</l><block s="reifyPredicate"><autolambda><block s="reportLessThan"><block var="i"/><block var="end"/></block></autolambda><list></list></block></block></script><script><block s="doSetVar"><l>test</l><block s="reifyPredicate"><autolambda><block s="reportGreaterThan"><block var="i"/><block var="end"/></block></autolambda><list></list></block></block></script></block><block s="doUntil"><block s="evaluate"><block var="test"/><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="let %&apos;a&apos; be %&apos;val&apos; in %&apos;loop&apos; %&apos;body&apos;" type="command" category="control"><comment x="0" y="0" w="238.66666666666666" collapsed="false">Provides LOOP as a function of one input that runs&#xD;the body of the LET with A set to the function input,&#xD;so the body can run itself recursively.&#xD;See COPY block in Variables for an example of use.</comment><header></header><code></code><translations>pt:tendo _ o valor inicial _ , executa _ definido como _&#xD;ca:fes que _ sigui _ al _ _&#xD;</translations><inputs><input type="%upvar"></input><input type="%s"></input><input type="%upvar"></input><input type="%cs"></input></inputs><script><block s="doSetVar"><l>a</l><block var="val"/></block><block s="doSetVar"><l>loop</l><block s="reifyScript"><script><block s="doSetVar"><l>a</l><block var="new value"/></block><block s="doRun"><block var="body"/><list><block var="a"/></list></block></script><list><l>new value</l></list></block></block><block s="doRun"><block var="loop"/><list><block var="a"/></list></block></script></block-definition><block-definition s="pipe %&apos;value&apos; $arrowRight %&apos;pipe&apos;" type="reporter" category="control"><comment x="0" y="0" w="339.3333333333333" collapsed="false">The inputs are a starting value and one or more monadic functions.&#xD;The first function is called with the starting value as its input.&#xD;The second function is called with the value reported by the first function as its input, and so on.  PIPE reports the value reported by the last function.  PIPE provides an alternative notation for function composition instead of the usual nesting.&#xD;&#xD;nested acronym:                                                                 &#xD;report (combine (keep items (capital-letter? ( )) from&#xD;                  (map (letter (1) of ( )) over&#xD;                                                 (sentence→list (phrase)))) using (join ( ) ( )))&#xD;&#xD;piped acronym:                                             &#xD;report (pipe (phrase) → &#xD;            (sentence→list ( ))&#xD;                              (map (letter (1) of ( )) over ( ))&#xD;                                              (keep items (capital-letter? ( )) from ( ))&#xD;                                (combine ( ) using (join ( ) ( )))&#xD;&#xD;Some people find PIPE easier to read because the functions are called in the same order in which you read them, whereas in nested composition the innermost function is called first. </comment><header></header><code></code><translations>pt:a aplicação a _ de _&#xD;ca:canalitza _ $arrowRight _&#xD;</translations><inputs><input type="%s"></input><input type="%mult%repRing"></input></inputs><script><block s="doIf"><block s="reportListIsEmpty"><block var="pipe"/></block><script><block s="doReport"><block var="value"/></block></script></block><block s="doReport"><custom-block s="pipe %s $arrowRight %mult%repRing"><block s="evaluate"><block s="reportListItem"><l>1</l><block var="pipe"/></block><list><block var="value"/></list></block><block s="reportCDR"><block var="pipe"/></block></custom-block></block></script></block-definition><block-definition s="run %&apos;blocks&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%mult%cmdRing"></input></inputs><script><block s="doIf"><block s="reportNot"><block s="reportListIsEmpty"><block var="blocks"/></block></block><script><block s="doRun"><block var="blocks"/><list></list></block><custom-block s="run %mult%cmdRing"><block s="reportCDR"><block var="blocks"/></block></custom-block></script></block></script></block-definition><block-definition s="group %&apos;gname&apos; %&apos;grun&apos;" type="command" category="other"><header></header><code></code><translations></translations><inputs><input type="%txt"></input><input type="%cs"></input></inputs><script><block s="doRun"><block var="grun"/><list></list></block></script></block-definition><block-definition s="group %&apos;gname&apos; %&apos;greport&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%txt"></input><input type="%s"></input></inputs><script><block s="doReport"><block var="greport"/></block></script></block-definition><block-definition s="for %&apos;thing&apos; in %&apos;things&apos; %&apos;body&apos;" type="command" category="lists"><comment x="0" y="0" w="90" collapsed="false">A much worse FOR loop.</comment><header></header><code></code><translations></translations><inputs><input type="%txt"></input><input type="%l"></input><input type="%cs"></input></inputs><script><block s="doIf"><block s="reportNot"><block s="reportListIsEmpty"><block var="things"/></block></block><script><block s="doRun"><block var="body"/><list></list></block><custom-block s="for %txt in %l %cs"><l>thing</l><block s="reportCDR"><block var="things"/></block><block var="body"/></custom-block></script></block></script><scripts><script x="128" y="150"><custom-block s="run %mult%cmdRing"><list><block s="reifyScript"><script></script><list></list></block></list></custom-block></script><script x="226.21875" y="95"><block s="reportListItem"><l>1</l><l/></block></script><script x="233.6630859375" y="143"><block var="body"/></script></scripts></block-definition><block-definition s="is %&apos;block&apos; weird?" type="predicate" category="Runtime, Sensors, and More"><comment x="0" y="0" w="90" collapsed="false">Checks if a block has an error, and, if it has, reports TRUE.</comment><header></header><code></code><translations></translations><inputs><input type="%cs"></input></inputs><script><custom-block s="safely try %cs then if %upvar %cs"><script><block s="doRun"><block var="block"/><list></list></block><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script><l>error</l><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></custom-block></script></block-definition><block-definition s="find out that %&apos;bool&apos;" type="command" category="Runtime, Sensors, and More"><comment x="0" y="0" w="90" collapsed="false">For that frame, Shown will become Bol (see inside.)</comment><header></header><code></code><translations></translations><inputs><input type="%mult%b"></input></inputs><script><block s="doForEach"><l>bol</l><block var="bool"/><script><block s="doIfElse"><block var="bol"/><script><block s="show"></block></script><script><block s="hide"></block></script></block></script></block></script><scripts><script x="134.6416015625" y="99"><block var="item"/></script></scripts></block-definition><block-definition s="complile %&apos;lile&apos;" type="command" category="Runtime, Sensors, and More"><comment x="0" y="0" w="90" collapsed="false">Like SAFELY TRY but with no second script. (Look inside, there&apos;s actually SAFELY TRY.)</comment><header></header><code></code><translations></translations><inputs><input type="%cmdRing"></input></inputs><script><custom-block s="safely try %cs then if %upvar %cs"><block var="lile"/><l>error</l><script></script></custom-block></script></block-definition><block-definition s="&lt;3" type="reporter" category="variables"><comment x="0" y="0" w="90" collapsed="false">To be used with the KISS block.</comment><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="reifyScript"><script><custom-block s="comment %mult%s"><list><l>Put me inside the KISS block.</l></list></custom-block></script><list></list></block></block></script></block-definition><block-definition s="kiss %&apos;koss&apos;" type="command" category="sound"><comment x="0" y="0" w="90" collapsed="false">Put the &lt;3 block inside for a romantic response. &#xD;&#xD;Or don&apos;t if you want a sad response.</comment><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doIfElse"><block s="reportEquals"><block var="koss"/><custom-block s="&lt;3"></custom-block></block><script><block s="doSayFor"><l>Kiss me...</l><l>2</l></block></script><script><block s="doSayFor"><l>I have no one to kiss anymore...</l><l>2</l></block></script></block></script></block-definition><block-definition s="mad?" type="predicate" category="Runtime, Sensors, and More"><comment x="0" y="0" w="90" collapsed="false">Reports whether chriscreators14 is mad or not.</comment><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="reportNot"><block s="reportEquals"><block var="mad?"/><l>0</l></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="false" hyperops="true" codify="false" inheritance="true" sublistIDs="false" id="602"><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="603"></list></costumes><sounds><list struct="atomic" id="604"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites select="2"><sprite name="Sprite" idx="1" x="0" y="0" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="0" color="80,80,80,1" pen="tip" id="609"><costumes><list struct="atomic" id="610"></list></costumes><sounds><list struct="atomic" id="611"></list></sounds><blocks></blocks><variables></variables><scripts><script x="142" y="405"><custom-block s="safely try %cs then if %upvar %cs"><script></script><l>error</l><script></script></custom-block></script><script x="81" y="303"><custom-block s="error %txt"><l></l></custom-block></script><script x="75" y="244"><custom-block s="safely try reporting %anyUE then if %upvar report %anyUE"><l></l><l>error</l><l></l></custom-block></script><script x="288" y="414"><custom-block s="cases: if %b then %cs %mult%boolUE"><l/><script></script><list><l/></list></custom-block></script><script x="184" y="354"><custom-block s="throw %s"><l>catchtag</l></custom-block></script><script x="290" y="337"><custom-block s="else if %b then %cs"><l/><script></script></custom-block></script><script x="135" y="529"><custom-block s="else %cs"><script></script></custom-block></script><script x="328" y="179"><custom-block s="catch %upvar %anyUE"><l>tag</l><l></l></custom-block></script><script x="390" y="259"><custom-block s="throw %s %s"><l>catchtag</l><l></l></custom-block></script><script x="337" y="93"><custom-block s="if %boolUE do %cs and pause all $pause-1-255-220-0"><l/><script></script></custom-block></script><script x="154" y="327"><custom-block s="comment %mult%s"><list><l></l></list></custom-block></script><script x="204" y="490"><custom-block s="cascade %n times %repRing %s %upvar"><l></l><block s="reifyReporter"><script></script><list></list></block><l></l><l>#</l></custom-block></script><script x="223" y="545"><custom-block s="cascade until %predRing %repRing %s %upvar"><block s="reifyPredicate"><script></script><list></list></block><block s="reifyReporter"><script></script><list></list></block><l></l><l>#</l></custom-block></script><script x="10" y="187"><custom-block s="compose %repRing %repRing"><block s="reifyReporter"><script></script><list></list></block><block s="reifyReporter"><script></script><list></list></block></custom-block></script><script x="23" y="107"><custom-block s="repeat %cs until %boolUE"><script></script><l/></custom-block></script><script x="53" y="379"><custom-block s="while %boolUE %cs"><l/><script></script></custom-block></script><script x="19" y="453"><custom-block s="repeat %n %upvar %cs"><l></l><l>#</l><script></script></custom-block></script><script x="56" y="512"><custom-block s="for %upvar = %n step %n to %n %cs"><l>i</l><l>1</l><l>1</l><l>10</l><script></script></custom-block></script><script x="464" y="388"><custom-block s="let %upvar be %s in %upvar %cs"><l>a</l><l></l><l>loop</l><script></script></custom-block></script><script x="412" y="507"><custom-block s="pipe %s $arrowRight %mult%repRing"><l></l><list><block s="reifyReporter"><script></script><list></list></block></list></custom-block></script><script x="278" y="223"><custom-block s="run %mult%cmdRing"><list><block s="reifyScript"><script></script><list></list></block></list></custom-block></script><script x="474" y="189"><custom-block s="group %txt %cs"><l></l><script></script></custom-block></script><script x="403" y="341"><custom-block s="group %txt %s"><l></l><l></l></custom-block></script><script x="407" y="30"><block s="doDeclareVariables"><list><l>items</l></list></block><custom-block s="for %txt in %l %cs"><l>each item</l><block var="items"/><script><block s="doSayFor"><l>item</l><l>2</l></block></script></custom-block></script><script x="352.3544921875" y="118"><custom-block s="catch %upvar %cs"><l>tag</l><script></script></custom-block></script><script x="265" y="47"><custom-block s="is %cs weird?"><script></script></custom-block></script><script x="261.3505859375" y="119"><block var="tag"/></script><script x="175" y="106"><custom-block s="throw %s"><l>catchtag</l></custom-block></script></scripts></sprite><sprite name="OS" idx="2" x="20" y="52" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="0" color="0,16.320000000000014,102,1" pen="tip" id="747"><costumes><list struct="atomic" id="748"></list></costumes><sounds><list struct="atomic" id="749"></list></sounds><blocks></blocks><variables></variables><scripts><comment x="121" y="10" w="90" collapsed="false">0 - ???</comment><script x="58" y="411"><custom-block s="run %mult%cmdRing"><list><block s="reifyScript"><script></script><list></list></block></list></custom-block></script><script x="131" y="64"><custom-block s="find out that %mult%b"><list><l><bool>true</bool></l><custom-block s="is %cs weird?"><script><block s="doWait"><l>1</l></block></script></custom-block><custom-block s="is %cs weird?"><script><block s="doWait"><l>1</l></block><custom-block s="throw %s"><l>catchtag</l></custom-block></script></custom-block><l><bool>true</bool></l></list></custom-block></script><script x="62" y="151"><block s="receiveGo"></block><block s="doDeclareVariables"><list><l>name</l></list></block><block s="doSetVar"><l>mad?</l><l>0</l></block><block s="doAsk"><l>what&apos;s your name?</l></block><block s="doSetVar"><l>name</l><block s="getLastAnswer"></block></block><custom-block s="cases: if %b then %cs %mult%boolUE"><block s="reportEquals"><block var="name"/><l>chriscreators14</l></block><script><block s="doSayFor"><l>Are you impersonating me?</l><l>2</l></block><block s="doChangeVar"><l>mad?</l><l>1</l></block></script><list><block s="reportNot"><custom-block s="is %cs weird?"><script><block s="doIf"><block s="reportUnicodeAsLetter"><l>65</l></block><script><custom-block s="throw %s"><block s="reportIsA"><l>5</l><l><option>number</option></l></block></custom-block></script></block></script></custom-block></block><block s="reportNot"><custom-block s="is %cs weird?"><script><custom-block s="group %txt %cs"><l>news! someone new gets kissed in town</l><script><custom-block s="kiss %s"><custom-block s="&lt;3"></custom-block></custom-block></script></custom-block><custom-block s="group %txt %cs"><l>news! someone gets a lot sadder</l><script><custom-block s="kiss %s"><l>me</l></custom-block></script></custom-block><custom-block s="find out that %mult%b"><list><l><bool>false</bool></l><l><bool>true</bool></l></list></custom-block></script></custom-block></block></list></custom-block><block s="doWaitUntil"><block s="reportKeyPressed"><l><option>any key</option></l></block></block><block s="bubble"><l>Hold the key that you&apos;re pressing...</l></block><block s="doDeclareVariables"><list><l>compassions</l><l>margin</l></list></block><custom-block s="cases: if %b then %cs %mult%boolUE"><block s="reportAnd"><block s="reportKeyPressed"><l><option>0</option></l></block><block s="reportNot"><custom-block s="mad?"></custom-block></block></block><script><block s="doSayFor"><l>Release!</l><l>1</l></block><block s="doAsk"><l>OK, what did I say again?</l></block><block s="doSetVar"><l>margin</l><l></l></block><custom-block s="complile %cmdRing"><block s="reifyScript"><script><block s="doSetVar"><l>compassions</l><block s="getLastAnswer"></block></block></script><list></list></block></custom-block><custom-block s="group %txt %cs"><l>crosspath</l><script><block s="doForEach"><l>compassion</l><block s="reportConcatenatedLists"><list><block s="reportNumbers"><l>1</l><block s="reportStringSize"><block var="compassions"/></block></block><block s="reportNewList"><list><block var="compassions"/></list></block></list></block><script><custom-block s="for %txt in %l %cs"><l>out of append</l><block s="reportConcatenatedLists"><list><block s="reportNumbers"><l>1</l><block s="reportIfElse"><block s="reportIsA"><block var="compassion"/><l><option>number</option></l></block><block var="compassion"/><block s="reportStringSize"><block var="compassion"/></block></block></block><block s="reportNewList"><list><block var="compassion"/></list></block></list></block><script><block s="doSayFor"><block s="reportNewList"><list><block var="compassions"/><block var="compassion"/></list></block><l>0.2</l></block></script></custom-block></script></block></script></custom-block></script><list><custom-block s="else if %b then %cs"><custom-block s="mad?"></custom-block><script><block s="doAsk"><l>... (answer "Sorry..." or "..."</l></block><custom-block s="cases: if %b then %cs %mult%boolUE"><block s="reportEquals"><block s="getLastAnswer"></block><l>Sorry...</l></block><script><block s="doSetVar"><l>mad?</l><l>0</l></block><block s="doSayFor"><l>Just don&apos;t do it again...</l><l>2</l></block></script><list><custom-block s="else if %b then %cs"><block s="reportEquals"><block s="getLastAnswer"></block><l>...</l></block><script><block s="doSayFor"><l>Waah...</l><l>2</l></block></script></custom-block><custom-block s="else %cs"><script><block s="doSayFor"><l>...</l><l>2</l></block></script></custom-block></list></custom-block></script></custom-block></list></custom-block></script><script x="366" y="444"><custom-block s="complile %cmdRing"><block s="reifyScript"><script></script><list></list></block></custom-block></script><script x="271" y="166"><custom-block s="else if %b then %cs"><l/><script></script></custom-block></script><script x="351" y="618"><block s="doSayFor"><l>OK, what did I say again?</l><l>2</l></block></script><script x="460" y="723"><block s="doSayFor"><l>...</l><l>2</l></block></script></scripts></sprite><watcher var="mad?" style="normal" x="10" y="10" color="243,118,29" hidden="true"/></sprites></stage><variables><variable name="mad?"><l>0</l></variable></variables></scene></scenes></project><media name="Scipt" app="Snap! 7, https://snap.berkeley.edu" version="2"></media></snapdata>