<snapdata remixID="13373480"><project name="Lab 2.3_CRUZ" app="Snap! 9.0, https://snap.berkeley.edu" version="2"><notes></notes><thumbnail>data:image/png;base64,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</thumbnail><scenes select="1"><scene name="Lab 2.3_CRUZ"><notes></notes><hidden></hidden><headers></headers><code></code><blocks><block-definition s="$flash sort %&apos;data&apos; ordering with %&apos;function&apos;" type="reporter" category="lists"><comment x="0" y="0" w="161.14285714285708" collapsed="false">Reports a sorted version of the list in its first input slot, using the comparison function in the second input slot.  For a list of numbers, using &lt; as the comparison function will sort from low to high; using &gt; will sort from high to low.</comment><header></header><code></code><translations>ca:ordena _ segons criteri _&#xD;</translations><inputs><input type="%l"></input><input type="%predRing"></input></inputs><script><block s="doReport"><block s="reportApplyExtension"><l>lst_sort(list, fn)</l><list><block var="data"/><block var="function"/></list></block></block></script></block-definition><block-definition s="$flash assoc %&apos;key&apos; %&apos;a-list&apos;" type="reporter" category="lists"><comment x="0" y="0" w="289.3333333333333" collapsed="false">The second input is an &quot;association list,&quot; a list of two-item lists.  Each of those smaller lists has a &quot;key&quot; as its first item and a &quot;value&quot; as its second.  ASSOC reports the first key-value pair in the association list whose key matches the first input.</comment><header></header><code></code><translations>ca:associació _ _&#xD;</translations><inputs><input type="%s"></input><input type="%l"></input></inputs><script><block s="doReport"><block s="reportAtomicFindFirst"><block s="reifyPredicate"><autolambda><block s="reportVariadicEquals"><list><block var="key"/><block s="reportListItem"><l>1</l><l/></block></list></block></autolambda><list></list></block><block var="a-list"/></block></block></script></block-definition><block-definition s="%&apos;#&apos; for each %&apos;item&apos; of %&apos;data&apos; %&apos;action&apos;" type="command" category="lists"><comment x="0" y="0" w="228.57142857142858" collapsed="false">This block carries out the given script for each item of the given list, like the primitive FOR EACH.&#xD;&#xD;What&apos;s different is that it provides the # variable, which will contain the item number in the list of each item in turn, 1 while processing item 1, and so on.</comment><header></header><code></code><translations>ca:_ per cada _ de _ _&#xD;</translations><inputs><input type="%upvar"></input><input type="%upvar"></input><input type="%l"></input><input type="%ca"></input></inputs><script><block s="doForEach"><l>inner item</l><block var="data"/><script><block s="doSetVar"><l>item</l><block var="inner item"/></block><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="☠︎ linked? %&apos;data&apos;" type="predicate" category="lists" helper="true"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportApplyExtension"><l>lst_linked(list)</l><list><block var="data"/></list></block></block></script></block-definition><block-definition s="☠︎ link %&apos;data&apos;" type="reporter" category="lists" helper="true"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doIf"><block s="reportListIsEmpty"><block var="data"/></block><script><block s="doReport"><block var="data"/></block></script><list></list></block><block s="doReport"><block s="reportCONS"><block s="reportListItem"><l>1</l><block var="data"/></block><block s="reportCDR"><block var="data"/></block></block></block></script></block-definition><block-definition s="printable %&apos;data&apos;" type="reporter" category="lists"><comment x="0" y="0" w="188.66666666666666" collapsed="false">Takes a (possibly deep) list as input,&#xD;and reports a human-readable text form &#xD;of the list (namely, Lisp notation).&#xD;&#xD;Will not work on circular lists.</comment><header></header><code></code><translations>ca:notació textual de _&#xD;</translations><inputs><input type="%l"></input></inputs><script><block s="doIf"><block s="reportNot"><block s="reportIsA"><block var="data"/><l><option>list</option></l></block></block><script><block s="doReport"><block var="data"/></block></script><list></list></block><block s="doIf"><block s="reportListIsEmpty"><block var="data"/></block><script><block s="doReport"><l>()</l></block></script><list></list></block><block s="doReport"><block s="reportJoinWords"><list><l>(</l><block s="reportAtomicCombine"><block s="reportMap"><block s="reifyReporter"><autolambda><custom-block s="printable %l"><l/></custom-block></autolambda><list></list></block><block var="data"/></block><block s="reifyReporter"><autolambda><block s="reportJoinWords"><list><l></l><l> </l><l></l></list></block></autolambda><list></list></block></block><l>)</l></list></block></block></script></block-definition><block-definition s="sentence %&apos;phrase&apos;" type="reporter" category="lists"><comment x="0" y="0" w="302.6666666666667" collapsed="false">SENTENCE is the main constructor for sentences, represented&#xD;as lists of words.  It takes zero or more inputs, each of which can&#xD;be either a list or a text string.  If a list, the input is assumed to be&#xD;a list of words.  If a text string, it is converted to a list of words using&#xD;SENTENCE→LIST.  Then all the lists of words are appended to form a new list of words.&#xD;&#xD;If the inputs are lists of lists rather than lists of words, SENTENCE,&#xD;like APPEND, does only one level of flattening, reporting a list of&#xD;all the items of all the input lists.</comment><header></header><code></code><translations>ca:frase _&#xD;</translations><inputs><input type="%mult%s"></input></inputs><script><block s="doReport"><block s="reportConcatenatedLists"><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportIfElse"><block s="reportIsA"><l></l><l><option>list</option></l></block><l></l><custom-block s="sentence $arrowRight list %txt"><l></l></custom-block></block></autolambda><list></list></block><block var="phrase"/></block></block></block></script></block-definition><block-definition s="$flash zip %&apos;lists&apos;" type="reporter" category="lists"><comment x="0" y="0" w="192" collapsed="false">ZIP takes any number of lists as inputs.  The lists should all be the same length.  ZIP reports a list of lists in which the first item is a list of all the first items, the second item is a list of all the second items, etc.&#xD;Viewing the inputs as the rows of a matrix, ZIP reports its transpose.</comment><header></header><code></code><translations></translations><inputs><input type="%mult%l"></input></inputs><script><block s="doReport"><block s="reportListAttribute"><l><option>columns</option></l><block var="lists"/></block></block></script></block-definition><block-definition s="%&apos;x&apos;" type="reporter" category="lists"><comment x="0" y="0" w="105.33333333333333" collapsed="false">The identity function reports its input.</comment><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block var="x"/></block></script></block-definition><block-definition s="multimap %&apos;function&apos; over %&apos;lists&apos;" type="reporter" category="lists"><comment x="0" y="0" w="267.3333333333333" collapsed="false">Takes as input a function of N inputs and N lists.&#xD;The function is called with item 1 of all the lists as its inputs, with item 2 of all the lists as its inputs, and so on.  (The lists should all be the same length.)</comment><header></header><code></code><translations>ca:multi-mapeja _ sobre _&#xD;</translations><inputs><input type="%repRing"></input><input type="%mult%l"></input></inputs><script><block s="doReport"><block s="reportMap"><block s="reifyReporter"><autolambda><block s="evaluate"><block var="function"/><custom-block s="%s"><l></l></custom-block></block></autolambda><list></list></block><custom-block s="$flash zip %mult%l"><block var="lists"/></custom-block></block></block></script></block-definition><block-definition s="sentence $arrowRight list %&apos;text&apos;" type="reporter" category="operators"><comment x="0" y="0" w="196" collapsed="false">Takes a sentence in text string form and reports the sentence as a list of its words.</comment><header></header><code></code><translations>de:Satz $arrowRight Liste _&#xD;ca:frase $arrowRight llista _&#xD;es:frase $arrowRight lista _&#xD;fr:phrase $arrowRight liste _&#xD;pt:uma lista com as palavras da frase _&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doReport"><block s="reportAtomicKeep"><block s="reifyPredicate"><autolambda><block s="reportNot"><block s="reportVariadicEquals"><list><block s="reportTextAttribute"><l><option>length</option></l><l></l></block><l>0</l></list></block></block></autolambda><list></list></block><block s="reportTextSplit"><block var="text"/><l><option>whitespace</option></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="221"><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="222"></list></costumes><sounds><list struct="atomic" id="223"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites select="1"><sprite name="Sprite" idx="1" x="0" y="-5.684341886080802e-14" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="0" color="80,80,80,1" pen="tip" id="228"><costumes><list struct="atomic" id="229"></list></costumes><sounds><list struct="atomic" id="230"></list></sounds><blocks></blocks><variables></variables><scripts><script x="10" y="10"><block s="receiveGo"></block><block s="doSetVar"><l>answers</l><block s="reportNewList"><list></list></block></block><block s="doSetVar"><l>loopQuestions</l><block s="reportNewList"><list><l>Is every side the same length?</l><l>Are all of the angles the same?</l><l>How many pairs of parallel sides are there?</l></list></block></block><block s="doSetVar"><l>shapes</l><block s="reportNewList"><list><l>square</l><l>rectangle</l><l>parallelogram</l><l>trapezoid</l></list></block></block><block s="doAsk"><l>How many sides does your shape have?</l></block><block s="doIf"><block s="reportVariadicEquals"><list><block s="getLastAnswer"></block><l>3</l></list></block><script><block s="bubble"><l>You are thinking of a triangle.</l></block></script><list><block s="reportVariadicEquals"><list><block s="getLastAnswer"></block><l>4</l></list></block><script><block s="doFor"><l>i</l><l>1</l><l>3</l><script><block s="doAsk"><block s="reportListItem"><block var="i"/><block var="loopQuestions"/></block></block><block s="doAddToList"><block s="getLastAnswer"></block><block var="answers"/></block></script></block><custom-block s="%upvar for each %upvar of %l %ca"><l>#</l><l>item</l><block var="answers"/><script><block s="doIf"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><block var="#"/><l>1</l></list></block><block s="reportVariadicEquals"><list><block var="#"/><l>2</l></list></block></list></block><script><block s="doIf"><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block var="item"/><l>y</l></list></block><block s="reportVariadicEquals"><list><block s="reportListItem"><l><option>last</option></l><block var="answers"/></block><l>2</l></list></block></list></block><script><block s="bubble"><block s="reportJoinWords"><list><l>You are thinking of a </l><block s="reportListItem"><block var="#"/><block var="shapes"/></block></list></block></block><block s="doWait"><l>2</l></block><block s="bubble"><l>Thank you for playing!</l></block><block s="doReport"><l></l></block></script><list></list></block></script><list><l/><script><block s="doIf"><block s="reportVariadicEquals"><list><block var="item"/><l>2</l></list></block><script><block s="bubble"><block s="reportJoinWords"><list><l>You are thinking of a </l><block s="reportListItem"><l>3</l><block var="shapes"/></block></list></block></block><block s="doWait"><l>2</l></block><block s="bubble"><l>Thank you for playing!</l></block><block s="doReport"><l></l></block></script><list><block s="reportVariadicEquals"><list><block var="item"/><l>1</l></list></block><script><block s="bubble"><block s="reportJoinWords"><list><l>You are thinking of a </l><block s="reportListItem"><l>4</l><block var="shapes"/></block></list></block></block><block s="doWait"><l>2</l></block><block s="bubble"><l>Thank you for playing!</l></block><block s="doReport"><l></l></block></script></list></block></script></list></block><block s="bubble"><l>I don&apos;t know what you&apos;re thinking of.</l></block><block s="doWait"><l>2</l></block><block s="bubble"><l>Thank you for playing!</l></block><block s="doReport"><l></l></block></script></custom-block></script><block s="reportVariadicEquals"><list><block s="getLastAnswer"></block><l>5</l></list></block><script><block s="bubble"><l>You are thinking of a pentagon.</l></block></script><block s="reportVariadicEquals"><list><block s="getLastAnswer"></block><l>6</l></list></block><script><block s="bubble"><l>You are thinking of a hexagon.</l></block></script><l><bool>true</bool></l><script><block s="bubble"><l>I don&apos;t know what you&apos;re thinking of.</l></block></script></list></block><block s="doWait"><l>2</l></block><block s="bubble"><l>Thank you for playing!</l></block></script><script x="359.2363281250002" y="939.25"><block s="reportVariadicOr"><list><l/><l/></list></block></script><script x="490.33333333333326" y="895.6666666666665"><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportListItem"><l>1</l><block var="answers"/></block><l>y</l></list></block><block s="reportVariadicEquals"><list><block s="reportListItem"><l>2</l><block var="answers"/></block><l>y</l></list></block></list></block></script></scripts></sprite><watcher var="answers" style="normal" x="10" y="10" color="243,118,29" hidden="true"/><watcher var="loopQuestions" style="normal" x="12" y="147.000002" color="243,118,29" hidden="true"/><watcher var="shapes" style="normal" x="10" y="103.000002" color="243,118,29" hidden="true"/></sprites></stage><variables><variable name="loopQuestions"><list struct="atomic" id="490">Is every side the same length?,Are all of the angles the same?,How many pairs of parallel sides are there?</list></variable><variable name="answers"><list struct="atomic" id="491">n,n,2</list></variable><variable name="shapes"><list struct="atomic" id="492">square,rectangle,parallelogram,trapezoid</list></variable></variables></scene></scenes></project><media name="Lab 2.3_CRUZ" app="Snap! 9.0, https://snap.berkeley.edu" version="2"></media></snapdata>