<project name="Lab3 Starter v2" app="Snap! 9.0, https://snap.berkeley.edu" version="2"><notes></notes><thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAAAAXNSR0IArs4c6QAABABJREFUeF7t1b9L1AEYx/GP1+BiYOSQQXBwIHYSFoEILt7UHYgajVZSEEgKgYtrQcuN/RsuNTg5ibT4Vzj5gwJpSA4N/YYnZGIKgvjpeXjfciDfu+d5Pp8XZ0dRFIV4kYApgQ4AmpJnbDsBAALBmgAArfEzHIAYsCYAQGv8DAcgBqwJANAaP8MBiAFrAgC0xs9wAGLAmgAArfEzHIAYsCYAQGv8DAcgBqwJANAaP8MBiAFrAgC0xs9wAGLAmgAArfEzHIAYsCYAQGv8DAcgBqwJANAaP8MBiAFrAgC0xs9wAGLAmgAArfEzHIAYsCYAQGv8DAcgBqwJANAaP8MBiAFrAgC0xs9wAGLAmgAArfEzHIAYsCYAQGv8DAcgBqwJANAaP8MBiAFrAgC0xs9wAGLAmgAArfEzHIAYsCYAQGv8DAcgBqwJANAaP8MBiAFrAgC0xs9wAGLAmgAArfEzHIAYsCYAQGv8DAcgBqwJANAaP8MBiAFrAgA8J/7l5WVtbGxoZGREfX191pIyDwfgOe0WRaG5uTltbm5qb29Po6Oj6u3tVaPRUE9PT2YT13obAC+Iu9VqaX5+Xtvb23+eOjg4UKlUUr1eb4M8eu/s7LzW0jINA+AFbR79Cs7Ozmpra+vUU7u7uxocHFS1WtXQ0JAGBgYymbjWWwB4QdxHv37r6+va399Xd3e3arWaKpVK+53X1SQAwHNyXFxc1M7OThve2NiYurq6riZxvuVUAgAEhDUBAFrjZzgAMWBNAIDW+BkOQAxYEwCgNX6GAxAD1gQAaI2f4QDEgDUBAFrjv9zwZrOphYWFy33oP38agP95QX+vt7K2qtr7cd05vK2Z529ULt3V9NTLQBecXRWAwer7srqkp80XJ1sfFnp4874m6+N6Uq1peHg41EUADFXX8bK36vf048bPs5t//6V3z95qZuK1+vv7Q1wGwBA1nSxZe1XXyre14z+0DjXxuKFHlQeark+pXC4Hu0YCYKDKPnz6qM9flzTZmFA94L/bf0UNwEAAM64KwIytBroJgIHKyrgqADO2GugmAAYqK+OqAMzYaqCbABiorIyrAjBjq4FuAmCgsjKuCsCMrQa6CYCBysq4KgAzthroJgAGKivjqgDM2GqgmwAYqKyMqwIwY6uBbgJgoLIyrgrAjK0GugmAgcrKuCoAM7Ya6CYABior46oAzNhqoJsAGKisjKsCMGOrgW4CYKCyMq4KwIytBroJgIHKyrgqADO2GugmAAYqK+OqAMzYaqCbABiorIyrAjBjq4FuAmCgsjKuCsCMrQa6CYCBysq4KgAzthroJgAGKivjqgDM2GqgmwAYqKyMqwIwY6uBbgJgoLIyrgrAjK0Guuk3PEk+t3V+AjsAAAAASUVORK5CYII=</thumbnail><scenes select="1"><scene name="Lab3 Starter v2"><notes></notes><palette><category name="Lab 3: Conditionals, Reporters &amp; Abstraction" color="0,116,143,1"/><category name="Autograder" color="214,8,0,1"/></palette><hidden></hidden><headers></headers><code></code><blocks><block-definition s="traffic signal %&apos;color&apos;" type="command" category="Lab 3: Conditionals, Reporters &amp; Abstraction"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs></block-definition><block-definition s="letter grade %&apos;number&apos;" type="command" category="Lab 3: Conditionals, Reporters &amp; Abstraction"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs></block-definition><block-definition s="is %&apos;num1&apos; between %&apos;num2&apos; and %&apos;num3&apos; ?" type="predicate" category="Lab 3: Conditionals, Reporters &amp; Abstraction"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input><input type="%s"></input></inputs></block-definition><block-definition s="sum of two smallest %&apos;num1&apos; and %&apos;num2&apos; and %&apos;num3&apos;" type="reporter" category="Lab 3: Conditionals, Reporters &amp; Abstraction"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input><input type="%s"></input></inputs></block-definition><block-definition s="letter grade reporter %&apos;number&apos;" type="reporter" category="Lab 3: Conditionals, Reporters &amp; Abstraction"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs></block-definition><block-definition s="traffic signal reporter %&apos;color&apos;" type="reporter" category="Lab 3: Conditionals, Reporters &amp; Abstraction"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs></block-definition><block-definition s="run autograder" type="reporter" category="Autograder"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doDeclareVariables"><list><l>tests</l><l>score</l></list></block><block s="doSetVar"><l>tests</l><block s="reportNewList"><list><block s="reifyReporter"><autolambda><custom-block s="Test: traffic signal reporter"></custom-block></autolambda><list></list></block><block s="reifyReporter"><autolambda><custom-block s="Test: letter grade reporter"></custom-block></autolambda><list></list></block><block s="reifyReporter"><autolambda><custom-block s="Test: is between numbers"></custom-block></autolambda><list></list></block><block s="reifyReporter"><autolambda><custom-block s="Test: sum of two smallest numbers"></custom-block></autolambda><list></list></block></list></block></block><block s="doReport"><block s="reportMap"><block s="reifyReporter"><autolambda><custom-block s="format test results %l"><custom-block s="run %repRing waiting up to %n seconds"><block s="reifyReporter"><script></script><list></list></block><l>5</l></custom-block></custom-block></autolambda><list></list></block><block var="tests"/></block></block></script></block-definition><block-definition s="Test: traffic signal reporter" type="reporter" category="Autograder"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doDeclareVariables"><list><l>results</l><l>input</l><l>output</l></list></block><block s="doSetVar"><l>input</l><block s="reportNewList"><list><l>Green</l><l>Red</l><l>Yellow</l></list></block></block><block s="doSetVar"><l>output</l><block s="reportNewList"><list><l>Go</l><l>Stop</l><l>Yield</l></list></block></block><custom-block s="safely try %cs then if %upvar %cs"><script><block s="doSetVar"><l>results</l><custom-block s="%repRing equals %s on %l"><block s="reifyReporter"><autolambda><custom-block s="traffic signal reporter %s"><l></l></custom-block></autolambda><list></list></block><block var="output"/><block var="input"/></custom-block></block><block s="doIfElse"><block s="reportListItem"><l>1</l><block var="results"/></block><script><block s="doReport"><block s="reportNewList"><list><block s="reportBlockAttribute"><l><option>label</option></l><block s="reifyReporter"><autolambda><custom-block s="Test: traffic signal reporter"></custom-block></autolambda><list></list></block></block><block s="reportListItem"><l>2</l><block var="results"/></block></list></block></block></script><script><block s="doReport"><block s="reportNewList"><list><block s="reportBlockAttribute"><l><option>label</option></l><block s="reifyReporter"><autolambda><custom-block s="Test: traffic signal reporter"></custom-block></autolambda><list></list></block></block><block s="reportListItem"><l>2</l><block var="results"/></block></list></block></block></script></block></script><l>error</l><script><block s="doReport"><block s="reportNewList"><list><block s="reportBlockAttribute"><l><option>label</option></l><block s="reifyReporter"><autolambda><custom-block s="Test: traffic signal reporter"></custom-block></autolambda><list></list></block></block><block s="reportJoinWords"><list><l>There is an error in your code. </l><block s="reportListItem"><l>2</l><block var="results"/></block></list></block></list></block></block></script></custom-block></script><scripts><script x="330.234375" y="51.63333333333334"><block s="reportNewList"><list><l></l><block s="reportNewList"><list><l>Red</l></list></block><block s="reportNewList"><list><l>Yellow</l></list></block></list></block></script><script x="295.3525390625" y="96.63333333333334"><block s="reportNewList"><list><l></l><block s="reportNewList"><list><l>Stop</l></list></block><block s="reportNewList"><list><l>Yield</l></list></block></list></block></script></scripts></block-definition><block-definition s="polygon 1 %&apos;sides&apos; %&apos;length&apos;" type="command" category="Autograder" helper="true"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="down"></block><block s="doRepeat"><block var="sides"/><script><block s="forward"><block var="length"/></block><block s="turn"><block s="reportQuotient"><l>360</l><block var="sides"/></block></block></script></block></script></block-definition><block-definition s="get pixels of %&apos;block&apos; with n= %&apos;n&apos; length= %&apos;length&apos; waiting %&apos;seconds&apos; seconds" type="reporter" category="Autograder" helper="true"><header></header><code></code><translations></translations><inputs><input type="%cmdRing"></input><input type="%s"></input><input type="%s"></input><input type="%s"></input></inputs><script><block s="doResetTimer"></block><block s="fork"><block s="reifyScript"><script><custom-block s="draw %s with n= %s length= %s"><block var="block"/><block var="n"/><block var="length"/></custom-block></script><list></list></block><list></list></block><block s="doWaitUntil"><block s="reportVariadicGreaterThan"><list><block s="getTimer"></block><block var="seconds"/></list></block></block><block s="doStopThis"><l><option>all but this script</option></l></block><block s="doReport"><block s="reportGetImageAttribute"><l><option>pixels</option></l><block s="reportPenTrailsAsCostume"></block></block></block></script></block-definition><block-definition s="draw %&apos;block&apos; with n= %&apos;n&apos; length= %&apos;length&apos;" type="command" category="Autograder" helper="true"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input><input type="%s"></input></inputs><script><block s="doWarp"><script><block s="setColor"><color>5,1,0,1</color></block><block s="setSize"><l>1</l></block><block s="setPenColorDimension"><l><option>hue</option></l><l>50</l></block><block s="gotoXY"><l>0</l><l>0</l></block><block s="setHeading"><l>90</l></block><block s="clear"></block><block s="down"></block><block s="doRun"><block var="block"/><list><block var="n"/><block var="length"/></list></block></script></block></script></block-definition><block-definition s="%&apos;A&apos; equals %&apos;B&apos; under %&apos;f&apos;" type="reporter" category="Autograder" helper="true"><header></header><code></code><translations></translations><inputs><input type="%cmdRing"></input><input type="%cmdRing"></input><input type="%repRing"></input></inputs><script><block s="doDeclareVariables"><list><l>getA</l><l>getB</l><l>diffA</l><l>diffB</l><l>total difference</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>getA</l><custom-block s="safely try reporting %anyUE then if %upvar report %anyUE"><block s="evaluate"><block var="f"/><list><block var="A"/></list></block><l>error</l><l>0</l></custom-block></block><block s="doSetVar"><l>getB</l><custom-block s="safely try reporting %anyUE then if %upvar report %anyUE"><block s="evaluate"><block var="f"/><list><block var="B"/></list></block><l>error</l><l>-1</l></custom-block></block><block s="doIf"><block s="reportVariadicEquals"><list><block var="getA"/><block var="getB"/></list></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script><list><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><block var="getA"/><l>0</l></list></block><block s="reportVariadicEquals"><list><block var="getB"/><l>-1</l></list></block></list></block><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script><l><bool>true</bool></l><script><block s="doReport"><custom-block s="pixel similarity algo A= %s and B= %s"><block var="getA"/><block var="getB"/></custom-block></block></script></list></block></script></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" helper="true"><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="pixel similarity algo A= %&apos;getA&apos; and B= %&apos;getB&apos;" type="predicate" category="Autograder" helper="true"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doDeclareVariables"><list><l>total difference</l><l>emptyA</l><l>emptyB</l></list></block><block s="doSetVar"><l>total difference</l><block s="reportNewList"><list></list></block></block><block s="doSetVar"><l>emptyA</l><block s="reportNewList"><list></list></block></block><block s="doSetVar"><l>emptyB</l><block s="reportNewList"><list></list></block></block><custom-block s="safely try %cs then if %upvar %cs"><script><block s="doFor"><l>i</l><l>1</l><block s="reportVariadicMax"><list><block s="reportListAttribute"><l><option>length</option></l><block var="getA"/></block><block s="reportListAttribute"><l><option>length</option></l><block var="getB"/></block></list></block><script><block s="doIf"><block s="reportVariadicOr"><list><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportListItem"><block var="i"/><block var="getA"/></block><l></l></list></block><block s="reportVariadicNotEquals"><list><block s="reportListItem"><block var="i"/><block var="getB"/></block><block s="reportNewList"><list><l>0</l><l>0</l><l>0</l><l>0</l></list></block></list></block><block s="reportVariadicNotEquals"><list><block s="reportListItem"><block var="i"/><block var="getA"/></block><block s="reportListItem"><block var="i"/><block var="getB"/></block></list></block></list></block><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportListItem"><block var="i"/><block var="getB"/></block><l></l></list></block><block s="reportVariadicNotEquals"><list><block s="reportListItem"><block var="i"/><block var="getA"/></block><block s="reportNewList"><list><l>0</l><l>0</l><l>0</l><l>0</l></list></block></list></block><block s="reportVariadicNotEquals"><list><block s="reportListItem"><block var="i"/><block var="getA"/></block><block s="reportListItem"><block var="i"/><block var="getB"/></block></list></block></list></block></list></block><script><block s="doAddToList"><block s="reportBoolean"><l><bool>true</bool></l></block><block var="total difference"/></block></script><list><block s="reportVariadicAnd"><list><block s="reportVariadicNotEquals"><list><block s="reportListItem"><block var="i"/><block var="getA"/></block><block s="reportListItem"><block var="i"/><block var="getB"/></block></list></block><block s="reportVariadicOr"><list><block s="reportVariadicNotEquals"><list><block s="reportListItem"><block var="i"/><block var="getA"/></block><block s="reportNewList"><list><l>0</l><l>0</l><l>0</l><l>0</l></list></block></list></block><block s="reportVariadicNotEquals"><list><block s="reportListItem"><block var="i"/><block var="getB"/></block><block s="reportNewList"><list><l>0</l><l>0</l><l>0</l><l>0</l></list></block></list></block></list></block></list></block><script><block s="doAddToList"><block s="reportBoolean"><l><bool>true</bool></l></block><block var="total difference"/></block></script></list></block></script></block><block s="doReport"><block s="reportVariadicOr"><list><block s="reportVariadicLessThan"><list><block s="reportListAttribute"><l><option>length</option></l><block var="total difference"/></block><l>100</l></list></block><block s="reportVariadicLessThan"><list><block s="reportMonadic"><l><option>abs</option></l><block s="reportDifference"><block s="reportListAttribute"><l><option>length</option></l><block var="getA"/></block><block s="reportListAttribute"><l><option>length</option></l><block var="getB"/></block></block></block><l>100</l></list></block></list></block></block></script><l>error</l><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></custom-block></script></block-definition><block-definition s="polygon 2 %&apos;sides&apos; %&apos;length&apos;" type="command" category="Autograder" helper="true"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="down"></block><block s="doRepeat"><block var="sides"/><script><block s="turn"><block s="reportQuotient"><l>360</l><block var="sides"/></block></block><block s="forward"><block var="length"/></block></script></block></script></block-definition><block-definition s="flower 1 %&apos;leaves&apos; %&apos;size&apos;" type="command" category="Autograder" helper="true"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doRepeat"><block var="leaves"/><script><custom-block s="polygon 1 %s %s"><l>4</l><block var="size"/></custom-block><block s="turn"><block s="reportQuotient"><l>360</l><block var="leaves"/></block></block></script></block></script></block-definition><block-definition s="flower 2 %&apos;leaves&apos; %&apos;size&apos;" type="command" category="Autograder" helper="true"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="down"></block><block s="doRepeat"><block var="leaves"/><script><block s="turn"><block s="reportQuotient"><l>360</l><block var="leaves"/></block></block><custom-block s="polygon 2 %s %s"><l>4</l><block var="size"/></custom-block></script></block></script></block-definition><block-definition s="run %&apos;test block&apos; waiting up to %&apos;wait seconds&apos; seconds" type="reporter" category="Autograder" helper="true"><header></header><code></code><translations></translations><inputs><input type="%repRing"></input><input type="%n">5</input></inputs><script><block s="doDeclareVariables"><list><l>test result</l></list></block><block s="doSetVar"><l>test result</l><block s="reportNewList"><list></list></block></block><block s="doResetTimer"></block><block s="doSetVar"><l>test result</l><block s="evaluate"><block var="test block"/><list></list></block></block><block s="doStopThis"><l><option>all but this script</option></l></block><block s="doIf"><block s="reportListIsEmpty"><block var="test result"/></block><script><block s="doReport"><l></l></block></script><list></list></block><block s="doReport"><block var="test result"/></block></script></block-definition><block-definition s="format test results %&apos;list&apos;" type="reporter" category="Autograder" helper="true"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportJoinWords"><list><block s="reportListItem"><l>1</l><block var="list"/></block><l>: </l><block s="reportListItem"><l>2</l><block var="list"/></block></list></block></block></script></block-definition><block-definition s="%&apos;f&apos; equals %&apos;solution&apos; on %&apos;inputs&apos;" type="reporter" category="Autograder" helper="true"><header></header><code></code><translations></translations><inputs><input type="%repRing"></input><input type="%s"></input><input type="%l"></input></inputs><script><block s="doDeclareVariables"><list><l>values</l><l>currentSolution</l></list></block><block s="doSetVar"><l>values</l><block s="reportNewList"><list></list></block></block><block s="doFor"><l>i</l><l>1</l><block s="reportListAttribute"><l><option>length</option></l><block var="inputs"/></block><script><block s="doIfElse"><block s="reportIsA"><block var="solution"/><l><option>list</option></l></block><script><block s="doSetVar"><l>currentSolution</l><block s="reportListItem"><block var="i"/><block var="solution"/></block></block></script><script><block s="doSetVar"><l>currentSolution</l><block var="solution"/></block></script></block><block s="doIfElse"><block s="reportIsA"><block s="reportListItem"><block var="i"/><block var="inputs"/></block><l><option>list</option></l></block><script><block s="doIfElse"><block s="reportVariadicEquals"><list><block s="reportListAttribute"><l><option>length</option></l><block s="reportListItem"><block var="i"/><block var="inputs"/></block></block><l>3</l></list></block><script><block s="doIf"><block s="reportVariadicNotEquals"><list><block s="evaluate"><block var="f"/><list><block s="reportListItem"><l>1</l><block s="reportListItem"><block var="i"/><block var="inputs"/></block></block><block s="reportListItem"><l>2</l><block s="reportListItem"><block var="i"/><block var="inputs"/></block></block><block s="reportListItem"><l>3</l><block s="reportListItem"><block var="i"/><block var="inputs"/></block></block></list></block><block var="currentSolution"/></list></block><script><block s="doReport"><block s="reportNewList"><list><block s="reportBoolean"><l><bool>false</bool></l></block><block s="reportJoinWords"><list><l>Test failed. | Inputs: </l><block s="reportListItem"><l>1</l><block s="reportListItem"><block var="i"/><block var="inputs"/></block></block><l>, </l><block s="reportListItem"><l>2</l><block s="reportListItem"><block var="i"/><block var="inputs"/></block></block><l>, </l><block s="reportListItem"><l>3</l><block s="reportListItem"><block var="i"/><block var="inputs"/></block></block><l> | Expected: </l><block var="currentSolution"/><l> | </l><l>Actual: </l><block s="evaluate"><block var="f"/><list><block s="reportListItem"><l>1</l><block s="reportListItem"><block var="i"/><block var="inputs"/></block></block><block s="reportListItem"><l>2</l><block s="reportListItem"><block var="i"/><block var="inputs"/></block></block><block s="reportListItem"><l>3</l><block s="reportListItem"><block var="i"/><block var="inputs"/></block></block></list></block></list></block></list></block></block></script><list></list></block></script><script><block s="doIf"><block s="reportVariadicNotEquals"><list><block s="evaluate"><block var="f"/><list><block s="reportListItem"><l>1</l><block s="reportListItem"><block var="i"/><block var="inputs"/></block></block><block s="reportListItem"><l>2</l><block s="reportListItem"><block var="i"/><block var="inputs"/></block></block></list></block><block var="currentSolution"/></list></block><script><block s="doReport"><block s="reportNewList"><list><block s="reportBoolean"><l><bool>false</bool></l></block><block s="reportJoinWords"><list><l>Test failed. | Inputs: </l><block s="reportListItem"><l>1</l><block s="reportListItem"><block var="i"/><block var="inputs"/></block></block><l>, </l><block s="reportListItem"><l>2</l><block s="reportListItem"><block var="i"/><block var="inputs"/></block></block><l> | Expected: </l><block var="currentSolution"/><l> | Actual: </l><block s="evaluate"><block var="f"/><list><block s="reportListItem"><l>1</l><block s="reportListItem"><block var="i"/><block var="inputs"/></block></block><block s="reportListItem"><l>2</l><block s="reportListItem"><block var="i"/><block var="inputs"/></block></block></list></block></list></block></list></block></block></script><list></list></block></script></block></script><script><block s="doIfElse"><block s="reportIsA"><block var="currentSolution"/><l><option>list</option></l></block><script><block s="doIf"><block s="reportNot"><block s="reportListContainsItem"><block var="currentSolution"/><block s="evaluate"><block var="f"/><list><block s="reportListItem"><block var="i"/><block var="inputs"/></block></list></block></block></block><script><block s="doReport"><block s="reportNewList"><list><block s="reportBoolean"><l><bool>false</bool></l></block><block s="reportJoinWords"><list><l>Test failed. | Inputs: </l><block s="reportListItem"><block var="i"/><block var="inputs"/></block><l> | Expected: </l><block s="reportListItem"><l>1</l><block var="currentSolution"/></block><l> Actual: </l><block s="evaluate"><block var="f"/><list><block s="reportListItem"><block var="i"/><block var="inputs"/></block></list></block></list></block></list></block></block></script><list></list></block></script><script><block s="doIf"><block s="reportVariadicNotEquals"><list><block s="evaluate"><block var="f"/><list><block s="reportListItem"><block var="i"/><block var="inputs"/></block></list></block><block var="currentSolution"/></list></block><script><block s="doReport"><block s="reportNewList"><list><block s="reportBoolean"><l><bool>false</bool></l></block><block s="reportJoinWords"><list><l>Test failed. | Inputs: </l><block s="reportListItem"><block var="i"/><block var="inputs"/></block><l> | Expected: </l><block var="currentSolution"/><l> | Actual: </l><block s="evaluate"><block var="f"/><list><block s="reportListItem"><block var="i"/><block var="inputs"/></block></list></block></list></block></list></block></block></script><list></list></block></script></block></script></block></script></block><block s="doReport"><block s="reportNewList"><list><block s="reportBoolean"><l><bool>true</bool></l></block><l>Test passed!</l></list></block></block></script></block-definition><block-definition s="data type of %&apos;input&apos;" type="reporter" category="Autograder" helper="true"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doIfElse"><block s="reportIsA"><block var="input"/><l><option>number</option></l></block><script><block s="doReport"><l>Number</l></block></script><script><block s="doIfElse"><block s="reportIsA"><block var="input"/><l><option>text</option></l></block><script><block s="doReport"><l>Text</l></block></script><script><block s="doIfElse"><block s="reportIsA"><block var="input"/><l><option>list</option></l></block><script><block s="doReport"><l>List</l></block></script><script><block s="doIfElse"><block s="reportIsA"><block var="input"/><l><option>predicate</option></l></block><script><block s="doReport"><l>Predicate</l></block></script><script><block s="doIfElse"><block s="reportIsA"><block var="input"/><l><option>reporter</option></l></block><script><block s="doReport"><l>Reporter Function</l></block></script><script><block s="doReport"><l>Error!</l></block></script></block></script></block></script></block></script></block></script></block></script></block-definition><block-definition s="format input/out %&apos;input&apos;" type="reporter" category="Autograder" helper="true"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doIf"><block s="reportIsA"><block var="input"/><l><option>list</option></l></block><script><block s="doIfElse"><block s="reportVariadicGreaterThanOrEquals"><list><l>1</l><block s="reportListAttribute"><l><option>length</option></l><block var="input"/></block></list></block><script><block s="doReport"><block s="reportJoinWords"><list><l>[</l><block var="input"/><l>]</l></list></block></block></script><script><block s="doDeclareVariables"><list><l>output</l></list></block><block s="doSetVar"><l>output</l><l>[</l></block><block s="doFor"><l>i</l><l>1</l><block s="reportListAttribute"><l><option>length</option></l><block var="input"/></block><script><block s="doSetVar"><l>output</l><block s="reportIfElse"><block s="reportVariadicEquals"><list><block var="i"/><block s="reportListAttribute"><l><option>length</option></l><block var="input"/></block></list></block><block s="reportJoinWords"><list><block var="output"/><l>, </l><block s="reportListItem"><block var="i"/><block var="input"/></block><l>]</l></list></block><block s="reportJoinWords"><list><block var="output"/><block s="reportIfElse"><block s="reportVariadicEquals"><list><block var="i"/><l>1</l></list></block><l></l><l>, </l></block><block s="reportListItem"><block var="i"/><block var="input"/></block></list></block></block></block></script></block><block s="doReport"><block var="output"/></block></script></block></script><list></list></block><block s="doReport"><block var="input"/></block></script></block-definition><block-definition s="format message %&apos;input&apos; %&apos;solution&apos; %&apos;output&apos;" type="reporter" category="Autograder" helper="true"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input><input type="%s"></input></inputs><script><block s="doReport"><block s="reportJoinWords"><list><l>Test failed. | Input(s): </l><custom-block s="format input/out %s"><block var="input"/></custom-block><l> | Expected: </l><custom-block s="format input/out %s"><block var="solution"/></custom-block><l> | </l><l>Actual: </l><custom-block s="format input/out %s"><block var="output"/></custom-block><l> | Expected Data Type: </l><custom-block s="data type of %s"><block var="solution"/></custom-block><l> | Actual Data Type: </l><custom-block s="data type of %s"><block var="output"/></custom-block></list></block></block></script></block-definition><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="Test: letter grade reporter" type="reporter" category="Autograder"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doDeclareVariables"><list><l>results</l><l>input</l><l>output</l></list></block><block s="doSetVar"><l>input</l><block s="reportNewList"><list><l>90</l><l>79</l><l>30</l></list></block></block><block s="doSetVar"><l>output</l><block s="reportNewList"><list><l>A</l><l>C</l><l>F</l></list></block></block><custom-block s="safely try %cs then if %upvar %cs"><script><block s="doSetVar"><l>results</l><custom-block s="%repRing equals %s on %l"><block s="reifyReporter"><autolambda><custom-block s="letter grade reporter %s"><l></l></custom-block></autolambda><list></list></block><block var="output"/><block var="input"/></custom-block></block><block s="doIfElse"><block s="reportListItem"><l>1</l><block var="results"/></block><script><block s="doReport"><block s="reportNewList"><list><block s="reportBlockAttribute"><l><option>label</option></l><block s="reifyReporter"><autolambda><custom-block s="Test: letter grade reporter"></custom-block></autolambda><list></list></block></block><block s="reportListItem"><l>2</l><block var="results"/></block></list></block></block></script><script><block s="doReport"><block s="reportNewList"><list><block s="reportBlockAttribute"><l><option>label</option></l><block s="reifyReporter"><autolambda><custom-block s="Test: letter grade reporter"></custom-block></autolambda><list></list></block></block><block s="reportListItem"><l>2</l><block var="results"/></block></list></block></block></script></block></script><l>error</l><script><block s="doReport"><block s="reportNewList"><list><block s="reportBlockAttribute"><l><option>label</option></l><block s="reifyReporter"><autolambda><custom-block s="Test: letter grade reporter"></custom-block></autolambda><list></list></block></block><block s="reportJoinWords"><list><l>There is an error in your code. </l><block s="reportListItem"><l>2</l><block var="results"/></block></list></block></list></block></block></script></custom-block></script><scripts><script x="309.234375" y="36.633333333333326"><block s="reportNewList"><list><l></l><block s="reportNewList"><list><l>79</l></list></block><block s="reportNewList"><list><l>30</l></list></block></list></block></script><script x="299.3525390625" y="83.63333333333334"><block s="reportNewList"><list><block s="reportNewList"><list><l>A</l></list></block><block s="reportNewList"><list><l>C</l></list></block><block s="reportNewList"><list><l>F</l></list></block></list></block></script></scripts></block-definition><block-definition s="Test: is between numbers" type="reporter" category="Autograder"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doDeclareVariables"><list><l>results</l><l>input</l><l>output</l></list></block><block s="doSetVar"><l>input</l><block s="reportNewList"><list><block s="reportNewList"><list><l>2</l><l>2</l><l>3</l></list></block><block s="reportNewList"><list><l>1</l><l>2</l><l>4</l></list></block><block s="reportNewList"><list><l>-3</l><l>3</l><l>6</l></list></block></list></block></block><block s="doSetVar"><l>output</l><block s="reportNewList"><list><block s="reportBoolean"><l><bool>true</bool></l></block><block s="reportBoolean"><l><bool>false</bool></l></block><block s="reportBoolean"><l><bool>false</bool></l></block></list></block></block><custom-block s="safely try %cs then if %upvar %cs"><script><block s="doSetVar"><l>results</l><custom-block s="%repRing equals %s on %l"><block s="reifyReporter"><autolambda><custom-block s="is %s between %s and %s ?"><l></l><l></l><l></l></custom-block></autolambda><list></list></block><block var="output"/><block var="input"/></custom-block></block><block s="doIfElse"><block s="reportListItem"><l>1</l><block var="results"/></block><script><block s="doReport"><block s="reportNewList"><list><block s="reportBlockAttribute"><l><option>label</option></l><block s="reifyReporter"><autolambda><custom-block s="Test: is between numbers"></custom-block></autolambda><list></list></block></block><block s="reportListItem"><l>2</l><block var="results"/></block></list></block></block></script><script><block s="doReport"><block s="reportNewList"><list><block s="reportBlockAttribute"><l><option>label</option></l><block s="reifyReporter"><autolambda><custom-block s="Test: is between numbers"></custom-block></autolambda><list></list></block></block><block s="reportListItem"><l>2</l><block var="results"/></block></list></block></block></script></block></script><l>error</l><script><block s="doReport"><block s="reportNewList"><list><block s="reportBlockAttribute"><l><option>label</option></l><block s="reifyReporter"><autolambda><custom-block s="Test: is between numbers"></custom-block></autolambda><list></list></block></block><block s="reportJoinWords"><list><l>There is an error in your code. </l><block s="reportListItem"><l>2</l><block var="results"/></block></list></block></list></block></block></script></custom-block></script><scripts><script x="317" y="11.63333333333334"><block s="reportNewList"><list><l></l><block s="reportNewList"><list><block s="reportBoolean"><l><bool>false</bool></l></block></list></block><block s="reportNewList"><list><block s="reportBoolean"><l><bool>false</bool></l></block></list></block></list></block></script></scripts></block-definition><block-definition s="Test: sum of two smallest numbers" type="reporter" category="Autograder"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doDeclareVariables"><list><l>results</l><l>input</l><l>output</l></list></block><block s="doSetVar"><l>input</l><block s="reportNewList"><list><block s="reportNewList"><list><l>3</l><l>1</l><l>4</l></list></block><block s="reportNewList"><list><l>4</l><l>2</l><l>1</l></list></block><block s="reportNewList"><list><l>2</l><l>2</l><l>3</l></list></block><block s="reportNewList"><list><l>5</l><l>1</l><l>2</l></list></block></list></block></block><block s="doSetVar"><l>output</l><block s="reportNewList"><list><l>4</l><l>3</l><l>4</l><l>3</l></list></block></block><custom-block s="safely try %cs then if %upvar %cs"><script><block s="doSetVar"><l>results</l><custom-block s="%repRing equals %s on %l"><block s="reifyReporter"><autolambda><custom-block s="sum of two smallest %s and %s and %s"><l></l><l></l><l></l></custom-block></autolambda><list></list></block><block var="output"/><block var="input"/></custom-block></block><block s="doIfElse"><block s="reportListItem"><l>1</l><block var="results"/></block><script><block s="doReport"><block s="reportNewList"><list><block s="reportBlockAttribute"><l><option>label</option></l><block s="reifyReporter"><autolambda><custom-block s="Test: sum of two smallest numbers"></custom-block></autolambda><list></list></block></block><block s="reportListItem"><l>2</l><block var="results"/></block></list></block></block></script><script><block s="doReport"><block s="reportNewList"><list><block s="reportBlockAttribute"><l><option>label</option></l><block s="reifyReporter"><autolambda><custom-block s="Test: sum of two smallest numbers"></custom-block></autolambda><list></list></block></block><block s="reportListItem"><l>2</l><block var="results"/></block></list></block></block></script></block></script><l>error</l><script><block s="doReport"><block s="reportNewList"><list><block s="reportBlockAttribute"><l><option>label</option></l><block s="reifyReporter"><autolambda><custom-block s="Test: sum of two smallest numbers"></custom-block></autolambda><list></list></block></block><block s="reportJoinWords"><list><l>There is an error in your code. </l><block s="reportListItem"><l>2</l><block var="results"/></block></list></block></list></block></block></script></custom-block></script><scripts><script x="304.3525390625" y="22.63333333333334"><block s="reportNewList"><list><l></l><block s="reportNewList"><list><l>3</l></list></block><block s="reportNewList"><list><l>4</l></list></block><block s="reportNewList"><list><l>3</l></list></block></list></block></script></scripts></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="1770"><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="1771"></list></costumes><sounds><list struct="atomic" id="1772"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites select="1"><sprite name="Lab" idx="1" x="0.8988764044943309" y="-0.22471910112358273" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="0" color="80,80,80,1" pen="tip" id="1777"><costumes><list struct="atomic" id="1778"></list></costumes><sounds><list struct="atomic" id="1779"></list></sounds><blocks></blocks><variables></variables><scripts><script x="32" y="180.83333333333337"><custom-block s="letter grade reporter %s"><l></l><comment w="90" collapsed="false">FIX ME</comment></custom-block></script><script x="32" y="272.83333333333337"><custom-block s="is %s between %s and %s ?"><l></l><l></l><l></l><comment w="90" collapsed="false">FIX ME</comment></custom-block></script><script x="25" y="374.83333333333337"><custom-block s="sum of two smallest %s and %s and %s"><l></l><l></l><l></l><comment w="225" collapsed="false">FIX ME. Find the two smallest numbers out of the three given, and add them together</comment></custom-block></script><script x="27" y="61.83333333333337"><custom-block s="traffic signal reporter %s"><l></l><comment w="266" collapsed="false">FIX ME. Inputs and outputs need to be the following to pass the autograder.&#xD;Input: Green --&gt; Output: Go&#xD;Input: Red --&gt; Output: Stop&#xD;nput: Yellow --&gt; Output: Yid</comment></custom-block></script></scripts></sprite><sprite name="Autograder" idx="2" x="111" y="-46" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="0" color="0,73.94999999999999,16.26899999999998,1" pen="tip" id="1795"><costumes><list struct="atomic" id="1796"></list></costumes><sounds><list struct="atomic" id="1797"></list></sounds><blocks></blocks><variables></variables><scripts><script x="27" y="32.83333333333334"><custom-block s="run autograder"><comment w="322" collapsed="false">This will run all the tests below. The test cases in the autograder are not comprehensive though. The tests on Gradescope will be more comprehensive and slightly different. </comment></custom-block></script><script x="20" y="347.16666666666663"><custom-block s="Test: sum of two smallest numbers"></custom-block></script><script x="24" y="124.66666666666669"><custom-block s="Test: traffic signal reporter"></custom-block></script><script x="25" y="196.5"><custom-block s="Test: letter grade reporter"></custom-block></script><script x="20" y="271.3333333333333"><custom-block s="Test: is between numbers"></custom-block></script></scripts></sprite></sprites></stage><variables></variables></scene></scenes></project>