<snapdata remixID="11054166"><project name="UPC Code" 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,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="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="30"><block s="receiveGo"></block><block s="doSetVar"><l>UPC Lists</l><block s="reportNewList"><list></list></block></block><block s="doSetVar"><l>UPC list</l><block s="reportNewList"><list></list></block></block><custom-block s="makeList"></custom-block><custom-block s="check UPC"></custom-block></script></scripts></sprite><watcher var="item" style="normal" x="10" y="217.00000599999998" color="243,118,29" hidden="true"/><watcher var="letter" style="normal" x="10" y="259.00001" color="243,118,29" hidden="true"/><watcher var="UPC list" style="normal" x="-8" y="13" color="243,118,29" hidden="true"/><watcher var="evensList" style="normal" x="97" y="10.00000399999999" color="243,118,29" hidden="true"/><watcher var="oddsList" style="normal" x="97" y="31.000001999999995" color="243,118,29" hidden="true"/><watcher var="check value" style="normal" x="95" y="55.00001199999997" color="243,118,29" hidden="true"/><watcher var="finalNum" style="normal" x="96" y="74.00001199999997" color="243,118,29" hidden="true"/><watcher var="UPC Lists" style="normal" x="-1" y="9.00001199999997" color="243,118,29" extX="106" extY="70"/></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="makeList" type="command" category="lists"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doAsk"><l>what 12 digit UPC code would you like to use?</l></block><block s="doAddToList"><block s="getLastAnswer"></block><block var="UPC Lists"/></block><block s="doSetVar"><l>letter</l><l>1</l></block><block s="doRepeat"><block s="reportStringSize"><block s="getLastAnswer"></block></block><script><block s="doAddToList"><block s="reportLetter"><block var="letter"/><block s="getLastAnswer"></block></block><block var="UPC list"/></block><block s="doSetVar"><l>letter</l><block s="reportSum"><block var="letter"/><l>1</l></block></block></script></block></script></block-definition><block-definition s="$flash analyze %&apos;data&apos;" type="reporter" category="lists"><comment x="0" y="0" w="149" collapsed="false">returns a frequency analysis of the argument list, represented as a two-column table, where the first column contains the unique values and the second column their occurrences</comment><header></header><code></code><translations>pt:$flash as frequências dos itens de _&#xD;</translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list><l>list</l></list><l>var dict = new Map(),&#xD;    result = [],&#xD;    data = list.itemsArray(),&#xD;    len = data.length,&#xD;    i;&#xD;for (i = 0; i &lt; len; i += 1) {&#xD;    if (dict.has(data[i])) {&#xD;        dict.set(data[i], dict.get(data[i]) + 1);&#xD;    } else {&#xD;        dict.set(data[i], 1);&#xD;    }&#xD;}&#xD;dict.forEach(function (value, key) {&#xD;    result.push(new List([key, value]));&#xD;});&#xD;return new List(result);</l></block><list><block var="data"/></list></block></block></script></block-definition><block-definition s="$flash group %&apos;data&apos; by %&apos;fn&apos;" type="reporter" category="lists"><header></header><code></code><translations>pt:o agrupamento dos itens de _ de acordo com _&#xD;</translations><inputs><input type="%l"></input><input type="%repRing"></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.reportAtomicGroup(data, fn);</l></block><list><block var="data"/><block var="fn"/></list></block></block></script></block-definition><block-definition s="$flash sort %&apos;data&apos; by %&apos;fn&apos;" type="reporter" category="lists"><header></header><code></code><translations>pt:uma ordenação de _ com critério _&#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="fn"/></list></block></block></script></block-definition><block-definition s="histogram of %&apos;data&apos; from: %&apos;floor&apos; to: %&apos;ceiling&apos; interval: %&apos;interval&apos;" type="reporter" category="lists"><header></header><code></code><translations>pt:o histograma de _ entre _ e _ com intervalo _&#xD;</translations><inputs><input type="%l"></input><input type="%n"></input><input type="%n"></input><input type="%n">1</input></inputs><script><block s="doReport"><custom-block s="fill %l key: %repRing from: %n to: %n interval: %repRing with: %repRing"><custom-block s="$flash sort %l by %predRing"><custom-block s="$flash analyze %l"><block var="data"/></custom-block><block s="reifyPredicate"><autolambda><block s="reportLessThan"><block s="reportListItem"><l>1</l><l/></block><block s="reportListItem"><l>1</l><l/></block></block></autolambda><list></list></block></custom-block><block s="reifyReporter"><autolambda><block s="reportListItem"><l>1</l><l/></block></autolambda><list></list></block><block var="floor"/><block var="ceiling"/><block s="reifyReporter"><autolambda><block s="reportSum"><l></l><block var="interval"/></block></autolambda><list></list></block><block s="reifyReporter"><autolambda><block s="reportNewList"><list><l></l><l>0</l></list></block></autolambda><list></list></block></custom-block></block></script></block-definition><block-definition s="histogram of %&apos;data&apos; grouped by: %&apos;key&apos; from: %&apos;floor&apos; to: %&apos;ceiling&apos; interval: %&apos;interval&apos;" type="reporter" category="lists"><header></header><code></code><translations>pt:o histograma de _ agrupado de acordo com _ entre _ e _ com passo _&#xD;</translations><inputs><input type="%l"></input><input type="%repRing"></input><input type="%n"></input><input type="%n"></input><input type="%repRing"></input></inputs><script><block s="doReport"><custom-block s="fill %l key: %repRing from: %n to: %n interval: %repRing with: %repRing"><custom-block s="$flash sort %l by %predRing"><custom-block s="$flash group %l by %repRing"><block var="data"/><block var="key"/></custom-block><block s="reifyPredicate"><autolambda><block s="reportLessThan"><block s="reportListItem"><l>1</l><l/></block><block s="reportListItem"><l>1</l><l/></block></block></autolambda><list></list></block></custom-block><block s="reifyReporter"><autolambda><block s="reportListItem"><l>1</l><l/></block></autolambda><list></list></block><block var="floor"/><block var="ceiling"/><block var="interval"/><block s="reifyReporter"><autolambda><block s="reportNewList"><list><l></l><l>0</l><block s="reportNewList"><list></list></block></list></block></autolambda><list></list></block></custom-block></block></script></block-definition><block-definition s="fill %&apos;data&apos; key: %&apos;key&apos; from: %&apos;floor&apos; to: %&apos;ceiling&apos; interval: %&apos;interval&apos; with: %&apos;generator&apos;" type="reporter" category="lists"><comment x="0" y="0" w="103" collapsed="false">add missing entries to a sorted list. Used for histograms</comment><header></header><code></code><translations>pt:os itens de _ com a chave _ entre _ e _ com passo _ completados por _&#xD;</translations><inputs><input type="%l"></input><input type="%repRing"></input><input type="%n"></input><input type="%n"></input><input type="%repRing"></input><input type="%repRing"></input></inputs><script><block s="doIf"><block s="reportGreaterThan"><block var="floor"/><block var="ceiling"/></block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doIf"><block s="reportEquals"><block var="data"/><block s="reportNewList"><list></list></block></block><script><block s="doReport"><block s="reportCONS"><block s="evaluate"><block var="generator"/><list><block var="floor"/></list></block><custom-block s="fill %l key: %repRing from: %n to: %n interval: %repRing with: %repRing"><block var="data"/><block var="key"/><block s="evaluate"><block var="interval"/><list><block var="floor"/></list></block><block var="ceiling"/><block var="interval"/><block var="generator"/></custom-block></block></block></script></block><block s="doIf"><block s="reportLessThan"><block s="evaluate"><block var="key"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><block var="floor"/></block><script><block s="doReport"><custom-block s="fill %l key: %repRing from: %n to: %n interval: %repRing with: %repRing"><block s="reportCDR"><block var="data"/></block><block var="key"/><block var="floor"/><block var="ceiling"/><block var="interval"/><block var="generator"/></custom-block></block></script></block><block s="doIf"><block s="reportEquals"><block s="evaluate"><block var="key"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><block var="floor"/></block><script><block s="doReport"><block s="reportCONS"><block s="reportListItem"><l>1</l><block var="data"/></block><custom-block s="fill %l key: %repRing from: %n to: %n interval: %repRing with: %repRing"><block s="reportCDR"><block var="data"/></block><block var="key"/><block s="evaluate"><block var="interval"/><list><block var="floor"/></list></block><block var="ceiling"/><block var="interval"/><block var="generator"/></custom-block></block></block></script></block><block s="doReport"><block s="reportCONS"><block s="evaluate"><block var="generator"/><list><block var="floor"/></list></block><custom-block s="fill %l key: %repRing from: %n to: %n interval: %repRing with: %repRing"><block var="data"/><block var="key"/><block s="evaluate"><block var="interval"/><list><block var="floor"/></list></block><block var="ceiling"/><block var="interval"/><block var="generator"/></custom-block></block></block></script></block-definition><block-definition s="pipe %&apos;value&apos; $arrowRight %&apos;pipe&apos;" type="reporter" category="control"><header></header><code></code><translations>pt:a aplicação a _ de _&#xD;</translations><inputs><input type="%s"></input><input type="%mult%repRing"></input></inputs><script><block s="doIf"><block s="reportListIsEmpty"><block var="pipe"/></block><script><block s="doReport"><block var="value"/></block></script></block><block s="doReport"><custom-block s="pipe %s $arrowRight %mult%repRing"><block s="evaluate"><block s="reportListItem"><l>1</l><block var="pipe"/></block><list><block var="value"/></list></block><block s="reportCDR"><block var="pipe"/></block></custom-block></block></script></block-definition><block-definition s="%&apos;text&apos; $arrowRight lower case" type="reporter" category="operators"><header></header><code></code><translations>pt:_ em minúsculas&#xD;</translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list><l>txt</l></list><l>return txt.toLowerCase()</l></block><list><block var="text"/></list></block></block></script></block-definition><block-definition s="plot %&apos;data&apos; %&apos;style&apos; at x: %&apos;left&apos; y: %&apos;bottom&apos; width: %&apos;width&apos; height: %&apos;height&apos;" type="command" category="pen"><header></header><code></code><translations>pt:desenha gráfico de barras de _ em (x: _ , y: _ ) com largura _ e altura _&#xD;</translations><inputs><input type="%l"></input><input type="%s" readonly="true">bars<options>bars&#xD;lines&#xD;pie chart</options></input><input type="%n">-200</input><input type="%n">-100</input><input type="%n">400</input><input type="%n">200</input></inputs><script><block s="doIfElse"><block s="reportEquals"><block var="style"/><l>pie chart</l></block><script><block s="doDeclareVariables"><list><l>x</l><l>y</l><l>r</l><l>total</l><l>start</l><l>end</l><l>state</l><l>pen size</l><l>heading</l></list></block><block s="doSetVar"><l>x</l><block s="reportSum"><block var="left"/><block s="reportQuotient"><block var="width"/><l>2</l></block></block></block><block s="doSetVar"><l>y</l><block s="reportSum"><block var="bottom"/><block s="reportQuotient"><block var="height"/><l>2</l></block></block></block><block s="doSetVar"><l>r</l><block s="reportIfElse"><block s="reportLessThan"><block var="height"/><block var="width"/></block><block s="reportQuotient"><block var="height"/><l>2</l></block><block s="reportQuotient"><block var="width"/><l>2</l></block></block></block><block s="doSetVar"><l>total</l><block s="reportCombine"><block var="data"/><block s="reifyReporter"><autolambda><block s="reportSum"><l></l><l></l></block></autolambda><list></list></block></block></block><block s="doSetVar"><l>state</l><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportNewList"><list><l></l><block s="getPenAttribute"><l></l></block></list></block></autolambda><list></list></block><block s="reportNewList"><list><l>hue</l><l>saturation</l><l>brightness</l></list></block></block></block><block s="doSetVar"><l>pen size</l><block s="getPenAttribute"><l><option>size</option></l></block></block><block s="doSetVar"><l>heading</l><block s="direction"></block></block><block s="setPenHSVA"><l><option>hue</option></l><l>0</l></block><block s="setPenHSVA"><l><option>brightness</option></l><l>80</l></block><block s="setPenHSVA"><l><option>saturation</option></l><l>80</l></block><block s="doWarp"><script><block s="doForEach"><l>slice</l><block var="data"/><script><block s="doChangeVar"><l>end</l><block s="reportProduct"><block s="reportQuotient"><block var="slice"/><block var="total"/></block><l>360</l></block></block><block s="gotoXY"><block var="x"/><block var="y"/></block><block s="down"></block><block s="doFor"><l>i</l><block var="start"/><block var="end"/><script><block s="gotoXY"><block s="reportSum"><block var="x"/><block s="reportProduct"><block var="r"/><block s="reportMonadic"><l><option>sin</option></l><block var="i"/></block></block></block><block s="reportSum"><block var="y"/><block s="reportProduct"><block var="r"/><block s="reportMonadic"><l><option>cos</option></l><block var="i"/></block></block></block></block></script></block><block s="gotoXY"><block var="x"/><block var="y"/></block><block s="up"></block><block s="setHeading"><block var="start"/></block><block s="turn"><block s="reportQuotient"><block s="reportDifference"><block var="end"/><block var="start"/></block><l>2</l></block></block><block s="forward"><block s="reportQuotient"><block var="r"/><l>2</l></block></block><block s="floodFill"></block><block s="changePenHSVA"><l><option>hue</option></l><block s="reportQuotient"><l>100</l><block s="reportListAttribute"><l><option>length</option></l><block var="data"/></block></block></block><block s="doSetVar"><l>start</l><block var="end"/></block></script></block><block s="doForEach"><l>setting</l><block var="state"/><script><block s="setPenHSVA"><block s="reportListItem"><l>1</l><block var="setting"/></block><block s="reportListItem"><l>2</l><block var="setting"/></block></block></script></block></script></block><block s="setSize"><block var="pen size"/></block><block s="setHeading"><block var="heading"/></block></script><script><block s="doDeclareVariables"><list><l>ratio</l><l>step</l><l>flat line ends</l><l>col</l><l>sorted</l><l>min</l></list></block><block s="doSetVar"><l>sorted</l><custom-block s="$flash sort %l by %predRing"><block var="data"/><block s="reifyPredicate"><autolambda><block s="reportGreaterThan"><l></l><l></l></block></autolambda><list></list></block></custom-block></block><block s="doIfElse"><block s="reportLessThan"><block s="reportListItem"><l><option>last</option></l><block var="sorted"/></block><l>0</l></block><script><block s="doSetVar"><l>min</l><block s="reportListItem"><l><option>last</option></l><block var="sorted"/></block></block></script><script><block s="doSetVar"><l>min</l><l>0</l></block></script></block><block s="doSetVar"><l>ratio</l><block s="reportQuotient"><block var="height"/><block s="reportDifference"><block s="reportListItem"><l>1</l><block var="sorted"/></block><block var="min"/></block></block></block><block s="doSetVar"><l>step</l><block s="reportQuotient"><block var="width"/><block s="reportListAttribute"><l><option>length</option></l><block var="data"/></block></block></block><block s="doIfElse"><block s="reportGreaterThan"><block var="step"/><l>2</l></block><script><block s="doSetVar"><l>col</l><block s="reportDifference"><block var="step"/><l>1</l></block></block></script><script><block s="doSetVar"><l>col</l><block s="reportProduct"><block var="step"/><l>0.8</l></block></block></script></block><block s="gotoXY"><block var="left"/><block var="bottom"/></block><block s="doIfElse"><block s="reportEquals"><block var="style"/><l>lines</l></block><script><block s="changeXPosition"><block s="reportQuotient"><block var="step"/><l>-2</l></block></block><block s="doWarp"><script><block s="doUntil"><block s="reportEquals"><block s="reportListAttribute"><l><option>length</option></l><block var="data"/></block><l>0</l></block><script><block s="gotoXY"><block s="reportSum"><block s="xPosition"></block><block var="step"/></block><block s="reportSum"><block var="bottom"/><block s="reportProduct"><block s="reportDifference"><block s="reportListItem"><l>1</l><block var="data"/></block><block var="min"/></block><block var="ratio"/></block></block></block><block s="down"></block><block s="doSetVar"><l>data</l><block s="reportCDR"><block var="data"/></block></block></script></block></script></block></script><script><block s="doSetVar"><l>flat line ends</l><block s="reportGlobalFlag"><l><option>flat line ends</option></l></block></block><block s="doSetGlobalFlag"><l><option>flat line ends</option></l><l><bool>true</bool></l></block><block s="setSize"><l>0.5</l></block><block s="down"></block><block s="changeXPosition"><block s="reportQuotient"><block var="step"/><l>2</l></block></block><block s="doWarp"><script><block s="doUntil"><block s="reportEquals"><block s="reportListAttribute"><l><option>length</option></l><block var="data"/></block><l>0</l></block><script><block s="setSize"><block var="col"/></block><block s="changeYPosition"><block s="reportProduct"><block s="reportDifference"><block s="reportListItem"><l>1</l><block var="data"/></block><block var="min"/></block><block var="ratio"/></block></block><block s="setYPosition"><block var="bottom"/></block><block s="setSize"><l>0.5</l></block><block s="doSetVar"><l>data</l><block s="reportCDR"><block var="data"/></block></block><block s="doIfElse"><block s="reportGreaterThan"><block s="reportListAttribute"><l><option>length</option></l><block var="data"/></block><l>0</l></block><script><block s="changeXPosition"><block var="step"/></block></script><script><block s="changeXPosition"><block s="reportQuotient"><block var="step"/><l>2</l></block></block></script></block></script></block></script></block><block s="doSetGlobalFlag"><l><option>flat line ends</option></l><block var="flat line ends"/></block></script></block><block s="up"></block></script></block></script></block-definition><block-definition s="reporter" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><l></l></block></script></block-definition><block-definition s="even" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doIf"><block s="reportEquals"><block s="reportModulus"><block var="item"/><l>2</l></block><l>0</l></block><script><block s="doReport"><block s="reportListIndex"><block var="item"/><block var="UPC list"/></block></block></script></block></script></block-definition><block-definition s="check UPC" type="command" category="control"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doSetVar"><l>oddsList</l><block s="reportNewList"><list></list></block></block><block s="doSetVar"><l>evensList</l><block s="reportNewList"><list></list></block></block><block s="doSetVar"><l>item</l><l>0</l></block><block s="doRepeat"><l>6</l><script><block s="doSetVar"><l>item</l><block s="reportSum"><block var="item"/><l>1</l></block></block><block s="doAddToList"><block s="reportListItem"><block var="item"/><block var="UPC list"/></block><block var="oddsList"/></block><block s="doSetVar"><l>item</l><block s="reportSum"><block var="item"/><l>1</l></block></block><block s="doAddToList"><block s="reportListItem"><block var="item"/><block var="UPC list"/></block><block var="evensList"/></block></script></block><block s="doSetVar"><l>check value</l><block s="reportListItem"><l><option>last</option></l><block var="evensList"/></block></block><block s="doDeleteFromList"><l><option>last</option></l><block var="evensList"/></block><block s="doSetVar"><l>oddsList</l><block s="reportCombine"><block var="oddsList"/><block s="reifyReporter"><autolambda><block s="reportSum"><l></l><l></l></block></autolambda><list></list></block></block></block><block s="doSetVar"><l>oddsList</l><block s="reportProduct"><block var="oddsList"/><l>3</l></block></block><block s="doSetVar"><l>evensList</l><block s="reportCombine"><block var="evensList"/><block s="reifyReporter"><autolambda><block s="reportSum"><l></l><l></l></block></autolambda><list></list></block></block></block><block s="doSetVar"><l>finalNum</l><block s="reportSum"><block var="oddsList"/><block s="reportSum"><block var="evensList"/><block var="check value"/></block></block></block><block s="doSetVar"><l>finalNum</l><block s="reportModulus"><block var="finalNum"/><l>10</l></block></block><block s="doIfElse"><block s="reportEquals"><block var="finalNum"/><l>0</l></block><script><block s="doSayFor"><l>This is a valid UPC code</l><l>2</l></block></script><script><block s="doSayFor"><l>This is not a valid UPC code</l><l>2</l></block></script></block><block s="doDeleteFromList"><l><option>all</option></l><block var="UPC list"/></block></script></block-definition></blocks><variables><variable name="UPC list"><list struct="atomic" id="966"></list></variable><variable name="oddsList"><l>27</l></variable><variable name="evensList"><l>14</l></variable><variable name="item"><l>12</l></variable><variable name="letter"><l>13</l></variable><variable name="check value"><l>9</l></variable><variable name="finalNum"><l>0</l></variable><variable name="UPC Lists"><list struct="atomic" id="967">040000394129</list></variable></variables></project><media name="UPC Code" app="Snap! 6, https://snap.berkeley.edu" version="1"></media></snapdata>