<snapdata remixID="9220091"><project name="Lab 5.5 - Two List Processing Algorithms" app="Snap! 5.4, http://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" 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="203.4912069375" y="13"><block s="doSetVar"><l>list 1</l><block s="reportNewList"><list><l>1</l><l>2</l><l>3</l><l>4</l><l>5</l><l>6</l><l>7</l><l>8</l><l>9</l><l>10</l></list></block></block><block s="doSetVar"><l>list 2</l><block s="reportNewList"><list><l>1</l><l>2</l><l>3</l><l>4</l><l>5</l><l>6</l><l>7</l><l>8</l><l>9</l><l>1</l></list></block></block><block s="doSetVar"><l>list 3</l><block s="reportNewList"><list><l>2</l><l>3</l><l>3</l></list></block></block></script><script x="257.4912069375" y="157"><custom-block s="are the numbers of %l distinct?"><l/></custom-block></script><script x="166.63671875" y="250.000002"><block var="list 1"/></script><script x="210.63671875" y="250.000002"><block var="list 2"/></script><script x="255.63671875" y="250.000002"><block var="list 3"/></script><script x="253" y="188"><custom-block s="duplicates %l"><l/></custom-block></script></scripts></sprite><watcher var="list 1" style="normal" x="10" y="10" color="243,118,29" extX="80" extY="70"/><watcher var="list 2" style="normal" x="11" y="106.000002" color="243,118,29" extX="79.99999999999989" extY="70"/><watcher var="number location" style="normal" x="12" y="202.000002" color="243,118,29"/><watcher var="list 3" style="normal" x="10" y="103.000002" color="243,118,29" extX="80" extY="70"/><watcher var="list w/o duplications" style="normal" x="10" y="196.000004" color="243,118,29" extX="80" extY="70"/></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="are the numbers of %&apos;list&apos; distinct?" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doForEach"><l>item</l><block var="list"/><script><block s="doFor"><l>i</l><l>1</l><block s="reportListLength"><block var="list"/></block><script><block s="doIf"><block s="reportNot"><block s="reportEquals"><block var="item"/><block s="reportListItem"><block var="i"/><block var="list"/></block></block></block><script><block s="doIf"><block s="reportEquals"><block s="reportListItem"><block var="i"/><block var="list"/></block><block s="reportListItem"><block var="item"/><block var="list"/></block></block><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block></script></block></script></block></script></block><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script><scripts><script x="592.000002" y="233.8333373333333"><block s="reportListItem"><l>1</l><block s="reportNumbers"><l>1</l><block s="reportListLength"><block var="list"/></block></block></block></script><script x="376.1865264375" y="161.00000699999998"><block s="reportListItem"><l>1</l><block var="list"/></block></script></scripts></block-definition><block-definition s="(sequential) position of number %&apos;number&apos; in list; %&apos;list&apos;" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%l"></input></inputs><script><block s="bubble"><l></l></block><block s="doDeclareVariables"><list><l>number location</l></list></block><block s="doSetVar"><l>number location</l><block s="reportNewList"><list></list></block></block><block s="doFor"><l>i</l><l>1</l><block s="reportListLength"><block var="unsorted list"/></block><script><block s="doIf"><block s="reportEquals"><block s="reportListItem"><block var="i"/><block var="unsorted list"/></block><block var="number"/></block><script><block s="doAddToList"><block var="i"/><block var="number location"/></block></script></block></script></block><block s="doIfElse"><block s="reportEquals"><block s="reportListLength"><block var="number location"/></block><l>0</l></block><script><block s="doReport"><l>-1</l></block></script><script><block s="doReport"><block var="number location"/></block></script></block></script></block-definition><block-definition s="(binary) position of number %&apos;number&apos; in sorted list %&apos;sorted list&apos;" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%l"></input></inputs><script><block s="doSetVar"><l>min</l><block s="reportListItem"><l>1</l><block var="sorted list"/></block></block><block s="doSetVar"><l>max</l><block s="reportListItem"><l><option>last</option></l><block var="sorted list"/></block></block><block s="doSetVar"><l>range</l><block s="reportDifference"><block var="max"/><block var="min"/></block></block><block s="doFor"><l>i</l><l>1</l><block s="reportListLength"><block var="sorted list"/></block><script><block s="doIf"><block s="reportEquals"><block s="reportListItem"><block var="i"/><block var="sorted list"/></block><block var="number"/></block><script><block s="doReport"><block var="i"/></block></script></block><block s="doIf"><block s="reportLessThan"><block s="reportListItem"><block var="i"/><block var="sorted list"/></block><block s="reportQuotient"><block var="range"/><l>2</l></block></block><script><block s="doSetVar"><l>max</l><block s="reportQuotient"><block var="range"/><l>2</l></block></block><block s="doSetVar"><l>range</l><block s="reportDifference"><block var="max"/><block var="min"/></block></block></script></block><block s="doIf"><block s="reportGreaterThan"><block s="reportListItem"><block var="i"/><block var="sorted list"/></block><block s="reportQuotient"><block var="range"/><l>2</l></block></block><script><block s="doSetVar"><l>min</l><block s="reportQuotient"><block var="range"/><l>2</l></block></block><block s="doSetVar"><l>range</l><block s="reportDifference"><block var="max"/><block var="min"/></block></block></script></block></script></block><block s="doReport"><l>-1</l></block></script></block-definition><block-definition s="max of list; %&apos;list&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doSetVar"><l>max</l><block s="reportListItem"><l>1</l><block var="list"/></block></block><block s="doFor"><l>i</l><l>1</l><block s="reportListLength"><block var="list"/></block><script><block s="doIf"><block s="reportGreaterThan"><block s="reportListItem"><block var="i"/><block var="list"/></block><block var="max"/></block><script><block s="doSetVar"><l>max</l><block var="i"/></block></script></block></script></block><block s="doReport"><block var="max"/></block></script></block-definition><block-definition s="position of number %&apos;number&apos; in list %&apos;list&apos;" type="command" category="variables"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%l"></input></inputs><script><block s="doFor"><l>i</l><l>1</l><block s="reportListLength"><block var="list"/></block><script><block s="doIf"><block s="reportEquals"><block s="reportListItem"><block var="i"/><block var="list"/></block><block var="number"/></block><script><block s="doAddToList"><block var="i"/><block var="number location"/></block><block s="doIf"><block s="reportGreaterThan"><block s="reportListLength"><block var="number location"/></block><l>1</l></block><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block></script></block></script></block></script></block-definition><block-definition s="duplicates %&apos;list&apos;" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doSetVar"><l>list w/o duplications</l><block s="reportNewList"><list></list></block></block><block s="doForEach"><l>item</l><block var="list"/><script><block s="doAddToList"><block var="item"/><block var="list w/o duplications"/></block></script></block><block s="doForEach"><l>item</l><block var="list w/o duplications"/><script><block s="doFor"><l>i</l><l>1</l><block s="reportListLength"><block var="list w/o duplications"/></block><script><block s="doIf"><block s="reportNot"><block s="reportEquals"><block var="item"/><block s="reportListItem"><block var="i"/><block var="list w/o duplications"/></block></block></block><script><block s="doIf"><block s="reportEquals"><block s="reportListItem"><block var="i"/><block var="list w/o duplications"/></block><block s="reportListItem"><block var="item"/><block var="list w/o duplications"/></block></block><script><block s="doDeleteFromList"><block s="reportListItem"><block var="i"/><block var="list w/o duplications"/></block><block var="list w/o duplications"/></block></script></block></script></block></script></block></script></block><block s="doReport"><block var="list w/o duplications"/></block></script></block-definition></blocks><variables><variable name="list 1"><list struct="atomic" id="396">1,2,3,4,5,6,7,8,9,10</list></variable><variable name="list 2"><list struct="atomic" id="397">1,1,2,3,4,5,6,7,8,9</list></variable><variable name="number location"><l></l></variable><variable name="list 3"><list struct="atomic" id="398">2,3,3</list></variable><variable name="list w/o duplications"><list struct="atomic" id="399"></list></variable></variables></project><media name="Lab 5.5 - Two List Processing Algorithms" app="Snap! 5.4, http://snap.berkeley.edu" version="1"></media></snapdata>