<snapdata remixID="10357266"><project name="Weather Report 2" app="Snap! 6, https://snap.berkeley.edu" version="1"><notes></notes><thumbnail>data:image/png;base64,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</thumbnail><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" scheduled="false" id="1"><pentrails>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAOhUlEQVR4Xu3VwQkAAAjEMN1/abewn7jAQRC64wgQIECAAIF3gX1fNEiAAAECBAiMAHsCAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQIHLFxAWmhEwHPAAAAAElFTkSuQmCC</pentrails><costumes><list struct="atomic" id="2"></list></costumes><sounds><list struct="atomic" id="3"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites><sprite name="Sprite" idx="1" x="0" y="0" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="0" color="80,80,80,1" pen="tip" id="8"><costumes><list struct="atomic" id="9"></list></costumes><sounds><list struct="atomic" id="10"></list></sounds><blocks></blocks><variables></variables><scripts><script x="30" y="29.999999999999957"><block s="receiveGo"></block><block s="doForever"><script><block s="doSetVar"><l>tempuratures</l><block s="reportNewList"><list></list></block></block><block s="doSetVar"><l>high tempuratures</l><block s="reportNewList"><list></list></block></block><block s="doSetVar"><l>low tempuratures</l><block s="reportNewList"><list></list></block></block><block s="doAsk"><block s="reportJoinWords"><list><l>What was the tempurature on </l><l>Sunday</l><l>?</l></list></block></block><block s="doAddToList"><block s="getLastAnswer"></block><block var="tempuratures"/></block><block s="doAsk"><block s="reportJoinWords"><list><l>What was the tempurature on </l><l>Monday</l><l>?</l></list></block></block><block s="doAddToList"><block s="getLastAnswer"></block><block var="tempuratures"/></block><block s="doAsk"><block s="reportJoinWords"><list><l>What was the tempurature on </l><l>Tuesday</l><l>?</l></list></block></block><block s="doAddToList"><block s="getLastAnswer"></block><block var="tempuratures"/></block><block s="doAsk"><block s="reportJoinWords"><list><l>What was the tempurature on </l><l>Wednesday</l><l>?</l></list></block></block><block s="doAddToList"><block s="getLastAnswer"></block><block var="tempuratures"/></block><block s="doAsk"><block s="reportJoinWords"><list><l>What was the tempurature on </l><l>Thursday</l><l>?</l></list></block></block><block s="doAddToList"><block s="getLastAnswer"></block><block var="tempuratures"/></block><block s="doAsk"><block s="reportJoinWords"><list><l>What was the tempurature on </l><l>Friday</l><l>?</l></list></block></block><block s="doAddToList"><block s="getLastAnswer"></block><block var="tempuratures"/></block><block s="doAsk"><block s="reportJoinWords"><list><l>What was the tempurature on </l><l>Saturday</l><l>?</l></list></block></block><block s="doAddToList"><block s="getLastAnswer"></block><block var="tempuratures"/></block><custom-block s="findHottestDay"></custom-block><custom-block s="addValues"></custom-block><custom-block s="averageValues"></custom-block><block s="doAsk"><l>Would you like to reset your lists and start again?</l></block><block s="doIf"><block s="reportEquals"><block s="getLastAnswer"></block><l>no</l></block><script><block s="doStopThis"><l><option>all</option></l></block></script></block></script></block></script></scripts></sprite><watcher var="days of the week" style="normal" x="10" y="10" color="243,118,29" hidden="true"/><watcher var="day" style="normal" x="10" y="31.000001999999995" color="243,118,29" hidden="true"/><watcher var="hot days" style="normal" x="10" y="73.00000599999998" color="243,118,29" hidden="true"/><watcher var="sumList" style="normal" x="10" y="94.00000799999997" color="243,118,29" hidden="true"/><watcher var="index" style="normal" x="10" y="115.00000999999997" color="243,118,29" hidden="true"/><watcher var="tempuratures" style="normal" x="7" y="7.00000399999999" color="243,118,29" extX="80" extY="70"/><watcher var="high tempuratures" style="normal" x="7" y="108.00000399999999" color="243,118,29" extX="80" extY="70" hidden="true"/><watcher var="low tempuratures" style="normal" x="5" y="209.00001199999994" color="243,118,29" extX="80" extY="70" hidden="true"/></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="$flash remove duplicates from %&apos;data&apos;" type="reporter" category="lists"><comment x="0" y="0" w="209" collapsed="false">Reports a new list whose items are the same as in the input list, except that if two or more equal items appear in the input list, only the first one is kept in the result.</comment><header></header><code></code><translations>ca:elimina els duplicats de _&#xD;</translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportAtomicKeep"><block s="reifyPredicate"><autolambda><block s="reportEquals"><block s="reportListIndex"><block var="value"/><block var="list"/></block><block var="index"/></block></autolambda><list><l>value</l><l>index</l><l>list</l></list></block><block var="data"/></block></block></script><scripts><script x="14" y="164.2222222222222"><block s="doWarp"><script><block s="doIf"><block s="reportEquals"><block var="data"/><block s="reportNewList"><list></list></block></block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doIfElse"><block s="reportListContainsItem"><block s="reportCDR"><block var="data"/></block><block s="reportListItem"><l>1</l><block var="data"/></block></block><script><block s="doReport"><custom-block s="$flash remove duplicates from %l"><block s="reportCDR"><block var="data"/></block></custom-block></block></script><script><block s="doReport"><block s="reportCONS"><block s="reportListItem"><l>1</l><block var="data"/></block><custom-block s="$flash remove duplicates from %l"><block s="reportCDR"><block var="data"/></block></custom-block></block></block></script></block></script></block></script></scripts></block-definition><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="evaluate"><block s="reportJSFunction"><list><l>data</l><l>fn</l><l>proc</l></list><l>return proc.reportAtomicSort(data, fn);</l></block><list><block var="data"/><block var="function"/></list></block></block></script><scripts><script x="12" y="147.55555555555557"><block s="doDeclareVariables"><list><l>even items</l><l>odd items</l><l>merge</l><l>split</l><l>copy of data</l><l>id</l></list></block><block s="doSetVar"><l>id</l><block s="reifyScript"><script><block s="doReport"><l></l></block></script><list></list></block></block><block s="doSetVar"><l>copy of data</l><block s="reportMap"><block var="id"/><block var="data"/></block></block><block s="doSetVar"><l>split</l><block s="reifyScript"><script><block s="doSetVar"><l>even items</l><block s="reportNewList"><list></list></block></block><block s="doSetVar"><l>odd items</l><block s="reportNewList"><list></list></block></block><block s="doUntil"><block s="reportListIsEmpty"><block var="copy of data"/></block><script><block s="doAddToList"><block s="reportListItem"><l>1</l><block var="copy of data"/></block><block var="odd items"/></block><block s="doDeleteFromList"><l>1</l><block var="copy of data"/></block><block s="doIf"><block s="reportNot"><block s="reportListIsEmpty"><block var="copy of data"/></block></block><script><block s="doAddToList"><block s="reportListItem"><l>1</l><block var="copy of data"/></block><block var="even items"/></block><block s="doDeleteFromList"><l>1</l><block var="copy of data"/></block></script></block></script></block></script><list></list></block></block><block s="doSetVar"><l>merge</l><block s="reifyScript"><script><block s="doIf"><block s="reportEquals"><block var="#1"/><block s="reportNewList"><list></list></block></block><script><block s="doReport"><block var="#2"/></block></script></block><block s="doIf"><block s="reportEquals"><block var="#2"/><block s="reportNewList"><list></list></block></block><script><block s="doReport"><block var="#1"/></block></script></block><block s="doIfElse"><block s="evaluate"><block var="function"/><list><block s="reportListItem"><l>1</l><block var="#1"/></block><block s="reportListItem"><l>1</l><block var="#2"/></block></list></block><script><block s="doReport"><block s="reportCONS"><block s="reportListItem"><l>1</l><block var="#1"/></block><block s="evaluate"><block var="merge"/><list><block s="reportCDR"><block var="#1"/></block><block var="#2"/></list></block></block></block></script><script><block s="doReport"><block s="reportCONS"><block s="reportListItem"><l>1</l><block var="#2"/></block><block s="evaluate"><block var="merge"/><list><block var="#1"/><block s="reportCDR"><block var="#2"/></block></list></block></block></block></script></block></script><list><l>#1</l><l>#2</l></list></block></block><block s="doIf"><block s="reportEquals"><block var="data"/><block s="reportNewList"><list></list></block></block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportCDR"><block var="data"/></block><block s="reportNewList"><list></list></block></block><script><block s="doReport"><block var="data"/></block></script></block><block s="doRun"><block var="split"/><list></list></block><block s="doReport"><block s="evaluate"><block var="merge"/><list><custom-block s="$flash sort %l ordering with %predRing"><block var="odd items"/><block var="function"/></custom-block><custom-block s="$flash sort %l ordering with %predRing"><block var="even items"/><block var="function"/></custom-block></list></block></block></script></scripts></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="reportEquals"><block var="key"/><block s="reportListItem"><l>1</l><l/></block></block></autolambda><list></list></block><block var="a-list"/></block></block></script><scripts><script x="19.333333333333332" y="108.22222222222221"><block s="doIf"><block s="reportEquals"><block var="a-list"/><block s="reportNewList"><list></list></block></block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doIf"><block s="reportEquals"><block var="key"/><block s="reportListItem"><l>1</l><block s="reportListItem"><l>1</l><block var="a-list"/></block></block></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block var="a-list"/></block></block></script></block><block s="doReport"><custom-block s="$flash assoc %s %l"><block var="key"/><block s="reportCDR"><block var="a-list"/></block></custom-block></block></script></scripts></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="doIfElse"><custom-block s="☠︎ linked? %l"><block var="data"/></custom-block><script><block s="doSetVar"><l>#</l><l>1</l></block><block s="doUntil"><block s="reportListIsEmpty"><block var="data"/></block><script><block s="doSetVar"><l>item</l><block s="reportListItem"><l>1</l><block var="data"/></block></block><block s="doRun"><block var="action"/><list></list></block><block s="doSetVar"><l>data</l><block s="reportCDR"><block var="data"/></block></block><block s="doChangeVar"><l>#</l><l>1</l></block></script></block></script><script><block s="doIf"><block s="reportNot"><block s="reportListIsEmpty"><block var="data"/></block></block><script><block s="doFor"><l>i</l><l>1</l><block s="reportListAttribute"><l><option>length</option></l><block var="data"/></block><script><block s="doSetVar"><l>#</l><block var="i"/></block><block s="doSetVar"><l>item</l><block s="reportListItem"><block var="i"/><block var="data"/></block></block><block s="doRun"><block var="action"/><list></list></block></script></block></script></block></script></block></script></block-definition><block-definition s="☠︎ linked? %&apos;data&apos;" type="predicate" category="lists"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list><l>data</l></list><l>return data.isLinked;</l></block><list><block var="data"/></list></block></block></script></block-definition><block-definition s="☠︎ link %&apos;data&apos;" type="reporter" category="lists"><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></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></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></block><block s="doIf"><block s="reportListIsEmpty"><block var="data"/></block><script><block s="doReport"><l>()</l></block></script></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></translations><inputs><input type="%mult%s"></input></inputs><script><block s="doReport"><block s="reportConcatenatedLists"><block s="reportAtomicMap"><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="doIf"><block s="reportListIsEmpty"><block s="reportListItem"><l>1</l><block var="lists"/></block></block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doReport"><block s="reportCONS"><block s="reportAtomicMap"><block s="reifyReporter"><autolambda><block s="reportListItem"><l>1</l><l/></block></autolambda><list></list></block><block var="lists"/></block><custom-block s="$flash zip %mult%l"><block s="reportAtomicMap"><block s="reifyReporter"><autolambda><block s="reportCDR"><l/></block></autolambda><list></list></block><block var="lists"/></block></custom-block></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></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="reportEquals"><block s="reportStringSize"><l></l></block><l>0</l></block></block></autolambda><list></list></block><block s="reportTextSplit"><block var="text"/><l><option>whitespace</option></l></block></block></block></script></block-definition><block-definition s="findHottestDay" type="command" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doSetVar"><l>tempuratures</l><custom-block s="$flash sort %l ordering with %predRing"><block var="tempuratures"/><block s="reifyPredicate"><autolambda><block s="reportLessThan"><l></l><l></l></block></autolambda><list></list></block></custom-block></block><block s="doSayFor"><block s="reportJoinWords"><list><l>The hottest day of the week was </l><block s="reportListItem"><l><option>last</option></l><block var="tempuratures"/></block><l> degrees.</l></list></block><l>4</l></block></script></block-definition><block-definition s="numberOfHotDays" type="command" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doSetVar"><l>hot days</l><l>0</l></block><block s="doForEach"><l>item</l><block var="tempuratures"/><script><block s="doIf"><block s="reportGreaterThan"><block var="item"/><l>75</l></block><script><block s="doAddToList"><block var="item"/><block var="high tempuratures"/></block><block s="doSetVar"><l>hot days</l><block s="reportSum"><block var="hot days"/><l>1</l></block></block></script></block></script></block><block s="doIfElse"><block s="reportEquals"><block var="hot days"/><l>1</l></block><script><block s="doSayFor"><block s="reportJoinWords"><list><l>There was 1 day over 75 degrees.</l></list></block><l>4</l></block></script><script><block s="doSayFor"><block s="reportJoinWords"><list><l>There were </l><block var="hot days"/><l> days over 75 degrees.</l></list></block><l>4</l></block></script></block></script></block-definition><block-definition s="addValues" type="command" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doSetVar"><l>sumList</l><l>0</l></block><block s="doSetVar"><l>sumList</l><block s="reportSum"><block s="reportListItem"><l>1</l><block var="tempuratures"/></block><block s="reportListItem"><l>2</l><block var="tempuratures"/></block></block></block><block s="doSetVar"><l>index</l><l>3</l></block><block s="doRepeat"><block s="reportDifference"><block s="reportListAttribute"><l><option>length</option></l><block var="tempuratures"/></block><l>2</l></block><script><block s="doSetVar"><l>sumList</l><block s="reportSum"><block var="sumList"/><block s="reportListItem"><block var="index"/><block var="tempuratures"/></block></block></block><block s="doSetVar"><l>index</l><block s="reportSum"><block var="index"/><l>1</l></block></block></script></block></script></block-definition><block-definition s="averageValues" type="command" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doSayFor"><block s="reportJoinWords"><list><l>The average tempurature this week was </l><block s="reportRound"><block s="reportQuotient"><block var="sumList"/><block s="reportListAttribute"><l><option>length</option></l><block var="tempuratures"/></block></block></block><l> degrees.</l></list></block><l>5</l></block></script></block-definition><block-definition s="tempRange" type="command" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doSayFor"><block s="reportJoinWords"><list><l>The tempurature this week ranged from </l><block s="reportListItem"><l>1</l><block var="tempuratures"/></block><l> degrees to </l><block s="reportListItem"><l><option>last</option></l><block var="tempuratures"/></block><l> degrees.</l></list></block><l>5</l></block></script></block-definition><block-definition s="numberOfColdDays" type="command" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doSetVar"><l>cold days</l><l>0</l></block><block s="doForEach"><l>item</l><block var="tempuratures"/><script><block s="doIf"><block s="reportGreaterThan"><l>40</l><block var="item"/></block><script><block s="doAddToList"><block var="item"/><block var="low tempuratures"/></block><block s="doSetVar"><l>cold days</l><block s="reportSum"><block var="cold days"/><l>1</l></block></block></script></block></script></block><block s="doIfElse"><block s="reportEquals"><block var="cold days"/><l>1</l></block><script><block s="doSayFor"><block s="reportJoinWords"><list><l>There was 1 day below 40 degrees.</l></list></block><l>4</l></block></script><script><block s="doSayFor"><block s="reportJoinWords"><list><l>There were </l><block var="cold days"/><l> days below 40 degrees.</l></list></block><l>4</l></block></script></block></script></block-definition></blocks><variables><variable name="days of the week"><list struct="atomic" id="982">sunday,monday,tuesday,wednesday,thursday,friday,saturday</list></variable><variable name="day"><l>1</l></variable><variable name="tempuratures"><list struct="atomic" id="983"></list></variable><variable name="high tempuratures"><list struct="atomic" id="984"></list></variable><variable name="hot days"><l>1</l></variable><variable name="sumList"><l>356</l></variable><variable name="index"><l>8</l></variable><variable name="cold days"><l>2</l></variable><variable name="low tempuratures"><list struct="atomic" id="985"></list></variable></variables></project><media name="Weather Report 2" app="Snap! 6, https://snap.berkeley.edu" version="1"></media></snapdata>