<blocksapp="Snap! 6, https://snap.berkeley.edu"version="1"><block-definitions="$flash remove duplicates from %'data'"type="reporter"category="lists"><commentw="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 last one is kept in the result.</comment><header></header><code></code><translations>ca:elimina els duplicats de _
</translations><inputs><inputtype="%l"></input></inputs><script><blocks="doReport"><blocks="reportAtomicKeep"><blocks="reifyPredicate"><autolambda><blocks="reportEquals"><blocks="reportListIndex"><blockvar="value"/><blockvar="list"/></block><blockvar="index"/></block></autolambda><list><l>value</l><l>index</l><l>list</l></list></block><blockvar="data"/></block></block></script><scripts><scriptx="14"y="164.2222222222222"><blocks="doWarp"><script><blocks="doIf"><blocks="reportEquals"><blockvar="data"/><blocks="reportNewList"><list></list></block></block><script><blocks="doReport"><blocks="reportNewList"><list></list></block></block></script></block><blocks="doIfElse"><blocks="reportListContainsItem"><blocks="reportCDR"><blockvar="data"/></block><blocks="reportListItem"><l>1</l><blockvar="data"/></block></block><script><blocks="doReport"><custom-blocks="$flash remove duplicates from %l"><blocks="reportCDR"><blockvar="data"/></block></custom-block></block></script><script><blocks="doReport"><blocks="reportCONS"><blocks="reportListItem"><l>1</l><blockvar="data"/></block><custom-blocks="$flash remove duplicates from %l"><blocks="reportCDR"><blockvar="data"/></block></custom-block></block></block></script></block></script></block></script></scripts></block-definition><block-definitions="$flash sort %'data' ordering with %'function'"type="reporter"category="lists"><commentw="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 < as the comparison function will sort from low to high; using > will sort from high to low.</comment><header></header><code></code><translations>ca:ordena _ segons criteri _
</translations><inputs><inputtype="%l"></input><inputtype="%predRing"></input></inputs><script><blocks="doReport"><blocks="evaluate"><blocks="reportJSFunction"><list><l>data</l><l>fn</l><l>proc</l></list><l>return proc.reportAtomicSort(data, fn);</l></block><list><blockvar="data"/><blockvar="function"/></list></block></block></script><scripts><scriptx="12"y="147.55555555555557"><blocks="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><blocks="doSetVar"><l>id</l><blocks="reifyScript"><script><blocks="doReport"><l></l></block></script><list></list></block></block><blocks="doSetVar"><l>copy of data</l><blocks="reportMap"><blockvar="id"/><blockvar="data"/></block></block><blocks="doSetVar"><l>split</l><blocks="reifyScript"><script><blocks="doSetVar"><l>even items</l><blocks="reportNewList"><list></list></block></block><blocks="doSetVar"><l>odd items</l><blocks="reportNewList"><list></list></block></block><blocks="doUntil"><blocks="reportListIsEmpty"><blockvar="copy of data"/></block><script><blocks="doAddToList"><blocks="reportListItem"><l>1</l><blockvar="copy of data"/></block><blockvar="odd items"/></block><blocks="doDeleteFromList"><l>1</l><blockvar="copy of data"/></block><blocks="doIf"><blocks="reportNot"><blocks="reportListIsEmpty"><blockvar="copy of data"/></block></block><script><blocks="doAddToList"><blocks="reportListItem"><l>1</l><blockvar="copy of data"/></block><blockvar="even items"/></block><blocks="doDeleteFromList"><l>1</l><blockvar="copy of data"/></block></script></block></script></block></script><list></list></block></block><blocks="doSetVar"><l>merge</l><blocks="reifyScript"><script><blocks="doIf"><blocks="reportEquals"><blockvar="#1"/><blocks="