<snapdata remixID="9733211"><project name="K-ary Smoothsort" app="Snap! 6, https://snap.berkeley.edu" version="1"><notes></notes><thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAALJklEQVR4Xu2df0xU2RXHvzP8cgVRCKBVQc1af6yA+KNWUGsEtT9c7AZam2Iku7bdJm6sm023WZt2zRKziW3iH9ro2k01krWmaleRxO1SJP6IgqwKq0ExiqygiPhbQIdhhOZcOm8ZReYNvjsz791zE8IMc9+59573mfPuO/f7Lrbu7u5ucGEPBMgDNgYwQJ7nZoUHNACLioqQkpLis1tGjx6NyuNlcHZ09Hvs5LSZeOLoqdPV1YXx48f73BYfYD0PCADv3LkD+hlI+e+7GXhrapSuQ6+/VaLVmzRpkq5juJK1PSAA3Lp1K+bMmQOaDlZXVyM/Px+7du0SEdFms4m/u3+PGzcO9fX12vuYfyxB7Ct2RG1oQOdXu2GPSYKzbDPCM1fDnjgVcLSi/ePvCy/W5RVrx40YMQLDhw+3tnd5dF49IABcu3YtcnJyBBwEIEWnGTNmYPDgwSgsLBRA0t9HjRqFsLAwDBs2DJWVlaJ+QuEbGPHT9xGa/BN0t7ag634jOvb9Aa/8Zjfs8a8Cg6LQ/uFroiO1P/9cgzk0NBRpaWleO8gVrO0BAeCxY8dAQLgjXWJiIkaOHInW1lYBYXh4OJxOp8fvy5cvo6WlBYn/+oWIgHrK10t3axEwIyNDvOaitge0m5AdO3aALq+9szLuy67bRX29/96TSnQf+ZtXL4a8WYhTtyDsFxcXY+PGjV6P4QrW94BHGqa0tBR79uwRo9YDn6+wxsTEIC8vD6mpqdb3LI9Qlwc4D6jLTVxJlgc0AK9evYqHDx8iOjrap7Zojlh1cDvabtb1e5yr4wnmv/MXODqcqKurw/z58xEREeFTW1zZeh7QAKQbkfj4eJ9H6Gy9i6S9eQjTcx+ypgyNDztFG1VVVeJyzEVtD2gAnj17Fna7Xcz9Hj16hPXr14NWOZKTkxEZGYlt27ahoKAATU1NcLlcIlJOmTIF506UIqdhk/Di4A9OwFlcgJDJWeh2tMFVfQD26BFwXehJQHe98yXq7zvF63v37mHBggVqe59H/+1SXEVFhQCQyurVqwWAlGZ5+vQp6Oakvb0djx8/xuzZszFhwgScPHkSK1aswMXKo8ht3CyOC5v7a4Rl5KPrdh3wpBWdlf+ELSISrouHxedPV/0Hl261idcPHjzA4sWL+RQo7gEtAu7fv1+7BFOiua2tTaxUEIAEC+UCac42aNAgESEpAjY2NqKuugK5jT0R0FvpXPUlahrvimrnzp3DqlWrvB3Cn1vcAxqAFy5cACWXhwwZ4tOQh0RFYfK94wgPDen3OEpkX0pYgIePWsVNCEVPgpmL2h7wSMM4HA6cOXNGzM9klaSkJEydOlWWebZrMg9oANIcj+Z6EydOlJYeoTlmRHg4Wpqb+nVTd1cXomPjxBeBpgKUsuFiTQ9oAJaUlGDMmDFSRxkbNQi3CtKRGN3/5RqwwfbBV7h554HoD801Fy5cKLVvbDwwHtAAPH/+vOgBiUU3bdokbkiWL1+uq1enT59Geno6Ojt7cnwvKm1NdUgp+x1CvjsX9u+8hrD0fLjOH0LoqxnoKPoQ4a//GY6dv0J3+z24fl+JxubbwlRzczMWLVqkqy9cyVwe0ACkuR8VEqZOnz4dDQ0N2Lx5s1i3PXr0KGJjY8XPjRs3MG3aNCHZonVjuiMm6RbdKRMkR44cEbnEa9euiTwi2aMbDloHdt5tQMrhNbDHJiEk+UcIm56LzorPYE9Kg80eBlftYQHf08vH4XyvHPXXm0WfaIUmMzPTXJ7l3urygAZgeXm5OIAEBgcOHMCSJUtAy3OUfqG5GMm16IfmiaTjozkj3VDQUhzN0yhHSBIuulzOnDkTtbW1ImFNgFJ9grf7UTNSy9bAFhkrImDo5Cy4vi5G6PQcdBz4EyLeWC9+U3G8ewKXv7ku+nPz5k3k5ubqGhBXMpcHNABppYOimlsT6B7Gs+8JpN53yd7q9/58aIQd4/fruKzbQ3H/t6W4eq1R5CEJbJbwmwssvb31SMPs3LkTHR0dYh4YDIXyhHPnzuUHmILhZEjqgwYgRbVDhw6JOZuvOj+99ePi4sSlnaIoF/YAeUAASMtwA3kkkwx8U7IDl4o/gd2Luv7NT8tx40nPWjMtw9EzKFzYAwLAmpqa555+e/ZpuBe9j/n0h4iO0KPFAq7lf6G1Q0oaLuwBASA98ea+WaAUDKU99u3bB8rvUdmyZQu2b9+OlStXglQzpIgh+RZBOeazbISFfBv+Iv9Y6fEkXG8XX/nlQe0tRdyQEG8JaT5BVveAAPDUqVNaZNqwYYMQJSQkJGDevHlYtmyZAOXKlSsYO3aseHCJxKT0eCZBO2HvzzwBLLgAONrQ/vGs53xXk7NXa2fWrFn8VJzV6dIxPgEgPaVGEqz+Cq2UZGVlCY1g75JclOcBYH82ql7fJT6mpHV2draO7nEVq3tAAEiJZFoLHjp0qM9zwdTUFMTHeZfyX62vFzsq0OWdQKa2uKjngb/jI7yNddrAPfKA/tipjR9GVw+6x2jFYPToTPsFUD3X8Ij94YH3sBQb0XMDygD6w+PcBt5HDv6Kz4UnGEAGwu8e+DFG4QvcYAD97nmFG+wNHQOoMAiBGjoDGCjPK9xu7/kdA6gwCIEaOgMYKM8r3G7vVAoDqDAI/h76bTQhHiM9cnkMoL/PgmLtPcAdDEMcjqEYkzGDAVTs/Ad0uLSEdhpH8ANkM4ABPROKNe6e49El9yLOMICKnf+AD5cBDPgpUK8Dfa3XcgRUj4OAjZgBDJjr1W3Y23otR0B12fDLyBlAv7iZG+ntAV/WazkCMjuGeKAM/0YmejZ3YgANcSkb8cUDA10u4wjoi5e5rocHjBAMMIAMlc8eMFIwwAD67H61DzBaMMAAqs2T7tETeDIEAwyg7lOgbkWZkMi07T5j/P+CTcquPwQDDKBJ4ZDV7b62uJAJiUzbHAFlUSLRrr8FAwygxJNpFtPetriQCYlM2xwBTUJgIAUDDKBJIDG6m8GyXssAGn1mTWKPATTJibJSN4NRMMAR0EqEeRkLA6jQyQ6WoQa7YoUjYLCQYnA/zKJYYQANPvGBNCdriwuZkMi0zXlAP9Ioc4sLmZDItM0A+gFAswsGGEA/QCKzCQaQNymXyVeftq0kGOAI6Hd8Xr5BBrAn6nlbw+Y54Muzplnw5myZkcSsthlABtBrlJIJNwP4kgCqIBhgAF8SEqMPD8YtLmRCItM2R8AB0KmaYIABHAAkRh+ismCAATSaJh/ssWBgHRhAH4AxsqqZtriQCYlM2zwH7INYM25xIRMSmbYZwGcAlOlstr0UG3FQeLz3nJreK781BwsGXiwYkPnFUToCWmmLC5mQyLStNIAsGNAnGGAADby1teoWFzIhkWlbuQjIipWem4BgWcNWAsBgcbbMSGJW2wzgM2kBs55Is/bbsgCyYMC4/2ouE24GkCMgC1KNusllxYqc/2rOEdALoaxYkatYYQD7AJC3uPBcU5UJiUzbppwD8hYXzy/qy4REpm1TAciCgcAIBhjA/39NGEAG0KgbVt12WDAQeMGA0hGQAWQAdUcroyqyYCC4BAPKRUAGkAE0KpjptsOKlXXCV6qtYQc0DcNbXJhDMGDZS7Bq33aZJ9Kstv0eAVkwYD7BgEy4/QYgCwbMKxgwPYC8xcVHeBsMYF85XakRkLe4sIZixZQRUGan2TarYV6Y32PBgPUEAzK/8IZcgnmLC2uv1wY9gCwYYAAHmtMdcATkLS7UWa8NygjIggEG0IhFBZ8iIAsG1BQMBE0EZAAZQKMXFbxGwIFOLmV+a9i2QnlABpAlUzK/8O4I+D+reRofvVfQxgAAAABJRU5ErkJggg==</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,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</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="230" y="90.00000000000011" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="0" color="51.00000000000004,255,0,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="10" y="10"><block s="receiveGo"></block><custom-block s="Startup"></custom-block><custom-block s="K-ary Smoothsort"></custom-block></script><script x="710" y="197.00000000000003"><block s="reportEquals"><block var="List"/><block s="reportNumbers"><l>1</l><block var="Length"/></block></block></script><script x="306" y="87.83333333333334"><block s="doReplaceInList"><block var="Length"/><block var="List"/><l>1</l></block><block s="doReplaceInList"><l>1</l><block var="List"/><block var="Length"/></block><custom-block s="visualize %mult%n"><list></list></custom-block><custom-block s="K-ary Smoothsort"></custom-block></script><script x="53" y="308.83333333333337"><custom-block s="Sunken Smoothsort"></custom-block></script></scripts></sprite><watcher scope="Sprite" s="getPenDown" style="normal" x="13.755543619790615" y="257.22867944564814" color="0,161,120" hidden="true"/><watcher scope="Sprite" s="xPosition" style="normal" x="13.755543619790615" y="290.2419868842562" color="74,108,212" hidden="true"/><watcher scope="Sprite" s="yPosition" style="normal" x="13.755543619790615" y="319.1286312369278" color="74,108,212" hidden="true"/><watcher var="Length" style="normal" x="5.879606119792015" y="82.62077763763418" color="243,118,29" hidden="true"/><watcher scope="Sprite" s="reportShown" style="normal" x="13.126562499999864" y="95.82391412593756" color="143,86,227" hidden="true"/><watcher var="Writes" style="normal" x="5.2506249999999" y="28.50125787593751" color="243,118,29"/><watcher var="Reads" style="normal" x="4" y="5.000001999999995" color="243,118,29"/><watcher var="Swaps" style="normal" x="2" y="72.999998" color="243,118,29"/><watcher var="Comparisons" style="normal" x="4.736000370849752" y="50.58811066409186" color="243,118,29"/><watcher var="List" style="normal" x="148" y="23" color="243,118,29" extX="423.24609375" extY="787.9999999999999" hidden="true"/></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="For %&apos;initialization&apos; %&apos;Condition&apos; %&apos;Increment&apos; %&apos;Commands&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%cmdRing"></input><input type="%predRing"></input><input type="%cmdRing"></input><input type="%cs"></input></inputs><script><block s="doRun"><block var="initialization"/><list></list></block><block s="doUntil"><block s="reportNot"><block s="evaluate"><block var="Condition"/><list></list></block></block><script><block s="doRun"><block var="Commands"/><list></list></block><block s="doRun"><block var="Increment"/><list></list></block></script></block></script></block-definition><block-definition s="A [ %&apos;index&apos; ]" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%n"></input></inputs><script><block s="doChangeVar"><l>Reads</l><l>1</l></block><block s="doReport"><block s="reportListItem"><block s="reportSum"><block var="index"/><l>1</l></block><block var="List"/></block></block></script></block-definition><block-definition s="Write %&apos;at&apos; %&apos;equals&apos; %&apos;Visualize&apos;" type="command" category="lists"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input><input type="%b">true</input></inputs><script><block s="doChangeVar"><l>Writes</l><l>1</l></block><block s="doReplaceInList"><block s="reportSum"><block var="at"/><l>1</l></block><block var="List"/><block var="equals"/></block><block s="doIf"><block var="Visualize"/><script><custom-block s="visualize %mult%n"><list><block var="at"/></list></custom-block></script></block></script></block-definition><block-definition s="Compare %&apos;Left&apos; %&apos;Right&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input></inputs><script><block s="doChangeVar"><l>Comparisons</l><l>1</l></block><block s="doReport"><block s="reportIfElse"><block s="reportGreaterThan"><block var="Left"/><block var="Right"/></block><l>1</l><block s="reportIfElse"><block s="reportEquals"><block var="Left"/><block var="Right"/></block><l>0</l><l>-1</l></block></block></block></script></block-definition><block-definition s="Swap %&apos;a&apos; %&apos;b&apos; %&apos;Visualize&apos;" type="command" category="lists"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input><input type="%b">true</input></inputs><script><block s="doDeclareVariables"><list><l>Val</l></list></block><block s="doChangeVar"><l>Swaps</l><l>1</l></block><block s="doSetVar"><l>Val</l><custom-block s="A [ %n ]"><block var="a"/></custom-block></block><custom-block s="Write %n %n %b"><block var="a"/><custom-block s="A [ %n ]"><block var="b"/></custom-block><l><bool>false</bool></l></custom-block><custom-block s="Write %n %n %b"><block var="b"/><block var="Val"/><l><bool>false</bool></l></custom-block><block s="doIf"><block var="Visualize"/><script><custom-block s="visualize %mult%n"><list><block s="reportSum"><block var="a"/><l>1</l></block><block s="reportSum"><block var="b"/><l>1</l></block></list></custom-block></script></block></script></block-definition><block-definition s="Startup" type="command" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doSetGlobalFlag"><l><option>turbo mode</option></l><l><bool>true</bool></l></block><block s="clear"></block><block s="hide"></block><block s="doSetVar"><l>Comparisons</l><l>0</l></block><block s="doSetVar"><l>Writes</l><l>0</l></block><block s="doSetVar"><l>Reads</l><l>0</l></block><block s="doSetVar"><l>Swaps</l><l>0</l></block><block s="gotoXY"><l>0</l><l>0</l></block><block s="doAsk"><l>Length</l></block><block s="doUntil"><block s="reportIsA"><block s="getLastAnswer"></block><l><option>number</option></l></block><script><block s="doAsk"><l>Length</l></block></script></block><block s="doSetVar"><l>Length</l><block s="getLastAnswer"></block></block><block s="gotoXY"><l>80</l><l>-120</l></block><block s="doIfElse"><l><bool>true</bool></l><script><block s="doAsk"><l>1) Sorted, 2) Reversed or 3) Shuffled?</l></block><block s="doUntil"><block s="reportListContainsItem"><block s="reportNewList"><list><l>1</l><l>2</l><l>3</l></list></block><block s="getLastAnswer"></block></block><script><block s="doAsk"><l>1) Sorted, 2) Reversed or 3) Shuffled?</l></block></script></block><block s="doRun"><block s="reportListItem"><block s="getLastAnswer"></block><block s="reportNewList"><list><block s="reifyScript"><script><block s="doSetVar"><l>List</l><block s="reportNumbers"><l>1</l><block var="Length"/></block></block></script><list></list></block><block s="reifyScript"><script><block s="doSetVar"><l>List</l><block s="reportNumbers"><block var="Length"/><l>1</l></block></block></script><list></list></block><block s="reifyScript"><script><block s="doSetVar"><l>List</l><block s="reportNewList"><list><l>1</l></list></block></block><block s="doFor"><l>Index</l><l>2</l><block var="Length"/><script><block s="doInsertInList"><block var="Index"/><block s="reportRandom"><l>1</l><block var="Index"/></block><block var="List"/></block></script></block></script><list></list></block></list></block></block><list></list></block></script><script><block s="doSetVar"><l>List</l><block s="reportNewList"><list><l>1</l></list></block></block><block s="doFor"><l>Index</l><l>2</l><block var="Length"/><script><block s="doInsertInList"><block var="Index"/><block s="reportRandom"><l>1</l><block var="Index"/></block><block var="List"/></block></script></block></script></block><custom-block s="visualize %mult%n"><list></list></custom-block></script></block-definition><block-definition s="visualize %&apos;Highlights&apos;" type="command" category="other"><header></header><code></code><translations></translations><inputs><input type="%mult%n"></input></inputs><script><block s="up"></block><block s="doWarp"><script><block s="clear"></block><block s="setPenHSVA"><l><option>hue</option></l><l>30</l></block><block s="doFor"><l>i</l><l>1</l><block s="reportListLength"><block var="List"/></block><script><block s="doIfElse"><block s="reportListContainsItem"><block var="Highlights"/><block var="i"/></block><script><block s="setPenHSVA"><l><option>brightness</option></l><l>20</l></block></script><script><block s="setPenHSVA"><l><option>brightness</option></l><l>100</l></block></script></block><block s="setXPosition"><block s="reportDifference"><block s="reportProduct"><l>460</l><block s="reportQuotient"><block var="i"/><block s="reportListLength"><block var="List"/></block></block></block><l>230</l></block></block><block s="setYPosition"><l>-180</l></block><block s="down"></block><block s="changeYPosition"><block s="reportProduct"><l>270</l><block s="reportQuotient"><block s="reportListItem"><block var="i"/><block var="List"/></block><block s="reportListLength"><block var="List"/></block></block></block></block><block s="up"></block></script></block></script></block></script></block-definition><block-definition s="all but last of %&apos;&lt;list&gt;&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportKeep"><block s="reifyPredicate"><autolambda><block s="reportLessThan"><block var="index"/><block s="reportListLength"><block var="&lt;list&gt;"/></block></block></autolambda><list><l>value</l><l>index</l></list></block><block var="&lt;list&gt;"/></block></block></script></block-definition><block-definition s="K-ary Smoothsort" type="command" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doAsk"><l>Base?</l></block><block s="doUntil"><block s="reportIsA"><block s="getLastAnswer"></block><l><option>number</option></l></block><script><block s="doAsk"><l>Base?</l></block></script></block><block s="doDeclareVariables"><list><l>focus</l><l>q</l><l>sizes</l><l>K</l></list></block><block s="doSetVar"><l>K</l><block s="getLastAnswer"></block></block><block s="doSetVar"><l>q</l><l>1</l></block><block s="doSetVar"><l>sizes</l><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportPower"><l></l><l>0</l></block></autolambda><list></list></block><block s="reportNumbers"><l>1</l><block var="K"/></block></block></block><block s="doSetVar"><l>focus</l><block s="reportSum"><block var="K"/><l>1</l></block></block><block s="doUntil"><block s="reportEquals"><block var="focus"/><block var="Length"/></block><script><block s="doIfElse"><block s="reportEquals"><block s="reportModulus"><block s="reportSum"><block var="q"/><l>1</l></block><block s="reportMonadic"><l><option>2^</option></l><block var="K"/></block></block><l>0</l></block><script><custom-block s="%n -ary Sink %n %n %l %b"><block var="K"/><block s="reportDifference"><block var="focus"/><l>1</l></block><l>1</l><block var="sizes"/><l><bool>false</bool></l></custom-block><block s="doSetVar"><l>q</l><block s="reportQuotient"><block s="reportSum"><block var="q"/><l>1</l></block><block s="reportMonadic"><l><option>2^</option></l><block var="K"/></block></block></block><block s="doFor"><l>i</l><block var="K"/><l>1</l><script><block s="doReplaceInList"><block var="i"/><block var="sizes"/><block s="reportSum"><l>1</l><block s="reportCombine"><block var="sizes"/><block s="reifyReporter"><autolambda><block s="reportSum"><l></l><l></l></block></autolambda><list></list></block></block></block></block></script></block></script><script><custom-block s="%n -ary Sink %n %n %l %b"><block var="K"/><block s="reportDifference"><block var="focus"/><l>1</l></block><block s="reportIfElse"><block s="reportLessThan"><block s="reportSum"><block var="focus"/><block s="reportCombine"><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportIfElse"><block s="reportEquals"><block s="reportModulus"><block s="reportSum"><block var="q"/><l>1</l></block><block s="reportMonadic"><l><option>2^</option></l><block s="reportDifference"><block s="reportSum"><block var="K"/><l>1</l></block><l></l></block></block></block><l>0</l></block><l>0</l><block s="reportListItem"><l></l><block var="sizes"/></block></block></autolambda><list></list></block><block s="reportNumbers"><l>1</l><block s="reportDifference"><block var="K"/><l>1</l></block></block></block><block s="reifyReporter"><autolambda><block s="reportSum"><l></l><l></l></block></autolambda><list></list></block></block></block><block var="Length"/></block><l>1</l><block var="q"/></block><block var="sizes"/><l><bool>false</bool></l></custom-block><block s="doSetVar"><l>q</l><block s="reportProduct"><block var="q"/><l>2</l></block></block><block s="doSetVar"><l>sizes</l><block s="reportConcatenatedLists"><list><block s="reportCDR"><block var="sizes"/></block><block s="reportNewList"><list><block s="reportDifference"><block s="reportDifference"><block s="reportListItem"><l>1</l><block var="sizes"/></block><l>1</l></block><block s="reportCombine"><block s="reportCDR"><block var="sizes"/></block><block s="reifyReporter"><autolambda><block s="reportSum"><l></l><l></l></block></autolambda><list></list></block></block></block></list></block></list></block></block><block s="doUntil"><block s="reportEquals"><block s="reportCombine"><block var="sizes"/><block s="reifyReporter"><autolambda><block s="reportSum"><l></l><l></l></block></autolambda><list></list></block></block><l>0</l></block><script><block s="doSetVar"><l>q</l><block s="reportProduct"><block var="q"/><l>2</l></block></block><block s="doSetVar"><l>sizes</l><block s="reportConcatenatedLists"><list><block s="reportCDR"><block var="sizes"/></block><block s="reportNewList"><list><block s="reportDifference"><block s="reportDifference"><block s="reportListItem"><l>1</l><block var="sizes"/></block><l>1</l></block><block s="reportCombine"><block s="reportCDR"><block var="sizes"/></block><block s="reifyReporter"><autolambda><block s="reportSum"><l></l><l></l></block></autolambda><list></list></block></block></block></list></block></list></block></block></script></block><block s="doChangeVar"><l>q</l><l>1</l></block></script></block><block s="doChangeVar"><l>focus</l><l>1</l></block></script></block><custom-block s="%n -ary Sink %n %n %l %b"><block var="K"/><block s="reportDifference"><block var="focus"/><l>1</l></block><block var="q"/><block var="sizes"/><l><bool>false</bool></l></custom-block><block s="doUntil"><block s="reportEquals"><block var="focus"/><block var="K"/></block><script><block s="doChangeVar"><l>q</l><l>-1</l></block><block s="doIfElse"><block s="reportEquals"><block s="reportCombine"><block var="sizes"/><block s="reifyReporter"><autolambda><block s="reportSum"><l></l><l></l></block></autolambda><list></list></block></block><l>0</l></block><script><block s="doChangeVar"><l>focus</l><l>-1</l></block><block s="doUntil"><block s="reportEquals"><block s="reportModulus"><block var="q"/><l>2</l></block><l>1</l></block><script><block s="doSetVar"><l>q</l><block s="reportQuotient"><block var="q"/><l>2</l></block></block><block s="doSetVar"><l>sizes</l><block s="reportCONS"><block s="reportSum"><l>1</l><block s="reportCombine"><block var="sizes"/><block s="reifyReporter"><autolambda><block s="reportSum"><l></l><l></l></block></autolambda><list></list></block></block></block><custom-block s="all but last of %l"><block var="sizes"/></custom-block></block></block></script></block></script><script><block s="doSetVar"><l>focus</l><block s="reportDifference"><block var="focus"/><block s="reportSum"><l>1</l><block s="reportCombine"><block var="sizes"/><block s="reifyReporter"><autolambda><block s="reportSum"><l></l><l></l></block></autolambda><list></list></block></block></block></block></block><block s="doRepeat"><block var="K"/><script><block s="doSetVar"><l>q</l><block s="reportSum"><block s="reportProduct"><block var="q"/><l>2</l></block><l>1</l></block></block><block s="doSetVar"><l>focus</l><block s="reportSum"><block var="focus"/><block s="reportListItem"><l>1</l><block var="sizes"/></block></block></block><block s="doSetVar"><l>sizes</l><block s="reportConcatenatedLists"><list><block s="reportCDR"><block var="sizes"/></block><block s="reportNewList"><list><block s="reportDifference"><block s="reportDifference"><block s="reportListItem"><l>1</l><block var="sizes"/></block><l>1</l></block><block s="reportCombine"><block s="reportCDR"><block var="sizes"/></block><block s="reifyReporter"><autolambda><block s="reportSum"><l></l><l></l></block></autolambda><list></list></block></block></block></list></block></list></block></block><custom-block s="%n -ary Sink %n %n %l %b"><block var="K"/><block s="reportDifference"><block var="focus"/><l>1</l></block><block var="q"/><block var="sizes"/><l><bool>true</bool></l></custom-block></script></block></script></block><custom-block s="visualize %mult%n"><list></list></custom-block></script></block></script></block-definition><block-definition s="%&apos;K&apos; -ary Sink %&apos;Node&apos; %&apos;*q&apos; %&apos;*sizes&apos; %&apos;Semi?&apos;" type="command" category="other"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input><input type="%n"></input><input type="%l"></input><input type="%b">false</input></inputs><script><block s="doDeclareVariables"><list><l>Children</l><l>Choice</l><l>Chvalue</l><l>Changed?</l></list></block><block s="doSetVar"><l>Chvalue</l><custom-block s="A [ %n ]"><block var="Node"/></custom-block></block><block s="doIfElse"><block var="Semi?"/><script><block s="doIf"><block s="reportEquals"><block var="*q"/><l>1</l></block><script><block s="doStopThis"><l><option>this block</option></l></block></script></block><block s="doSetVar"><l>Choice</l><block s="reportDifference"><block var="Node"/><block s="reportSum"><l>1</l><block s="reportCombine"><block var="*sizes"/><block s="reifyReporter"><autolambda><block s="reportSum"><l></l><l></l></block></autolambda><list></list></block></block></block></block></block><block s="doIfElse"><block s="reportEquals"><custom-block s="Compare %n %n"><custom-block s="A [ %n ]"><block var="Choice"/></custom-block><custom-block s="A [ %n ]"><block var="Node"/></custom-block></custom-block><l>1</l></block><script><block s="doSetVar"><l>Changed?</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><custom-block s="Write %n %n %b"><block var="Node"/><custom-block s="A [ %n ]"><block var="Choice"/></custom-block><l><bool>true</bool></l></custom-block><block s="doSetVar"><l>Node</l><block var="Choice"/></block><block s="doChangeVar"><l>*q</l><l>-1</l></block><block s="doUntil"><block s="reportEquals"><block s="reportModulus"><block var="*q"/><l>2</l></block><l>1</l></block><script><block s="doSetVar"><l>*q</l><block s="reportQuotient"><block var="*q"/><l>2</l></block></block><block s="doSetVar"><l>*sizes</l><block s="reportCONS"><block s="reportSum"><l>1</l><block s="reportCombine"><block var="*sizes"/><block s="reifyReporter"><autolambda><block s="reportSum"><l></l><l></l></block></autolambda><list></list></block></block></block><custom-block s="all but last of %l"><block var="*sizes"/></custom-block></block></block></script></block></script><script><block s="doStopThis"><l><option>this block</option></l></block></script></block></script><script><block s="doSetVar"><l>Changed?</l><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block><block s="doForever"><script><block s="doIfElse"><block s="reportEquals"><block s="reportCombine"><block var="*sizes"/><block s="reifyReporter"><autolambda><block s="reportSum"><l></l><l></l></block></autolambda><list></list></block></block><l>0</l></block><script><block s="doIfElse"><block s="reportEquals"><block var="*q"/><l>1</l></block><script><block s="doIf"><block var="Changed?"/><script><custom-block s="Write %n %n %b"><block var="Node"/><block var="Chvalue"/><l><bool>true</bool></l></custom-block></script></block><block s="doStopThis"><l><option>this block</option></l></block></script><script><block s="doIfElse"><block s="reportEquals"><custom-block s="Compare %n %n"><custom-block s="A [ %n ]"><block s="reportDifference"><block var="Node"/><l>1</l></block></custom-block><block var="Chvalue"/></custom-block><l>1</l></block><script><block s="doSetVar"><l>*q</l><block s="reportDifference"><block var="*q"/><l>1</l></block></block><block s="doSetVar"><l>Changed?</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><custom-block s="Write %n %n %b"><block var="Node"/><custom-block s="A [ %n ]"><block s="reportDifference"><block var="Node"/><l>1</l></block></custom-block><l><bool>true</bool></l></custom-block><block s="doSetVar"><l>Node</l><block s="reportDifference"><block var="Node"/><l>1</l></block></block><block s="doUntil"><block s="reportEquals"><block s="reportModulus"><block var="*q"/><l>2</l></block><l>1</l></block><script><block s="doSetVar"><l>*q</l><block s="reportQuotient"><block var="*q"/><l>2</l></block></block><block s="doSetVar"><l>*sizes</l><block s="reportCONS"><block s="reportSum"><l>1</l><block s="reportCombine"><block var="*sizes"/><block s="reifyReporter"><autolambda><block s="reportSum"><l></l><l></l></block></autolambda><list></list></block></block></block><custom-block s="all but last of %l"><block var="*sizes"/></custom-block></block></block></script></block></script><script><block s="doIf"><block var="Changed?"/><script><custom-block s="Write %n %n %b"><block var="Node"/><block var="Chvalue"/><l><bool>true</bool></l></custom-block></script></block><block s="doStopThis"><l><option>this block</option></l></block></script></block></script></block></script><script><block s="doSetVar"><l>Children</l><block s="reportNewList"><list><block s="reportDifference"><block var="Node"/><l>1</l></block></list></block></block><block s="doFor"><l>i</l><block var="K"/><l>1</l><script><block s="doSetVar"><l>Children</l><block s="reportCONS"><block s="reportDifference"><block s="reportListItem"><l>1</l><block var="Children"/></block><block s="reportListItem"><block var="i"/><block var="*sizes"/></block></block><block var="Children"/></block></block></script></block><block s="doSetVar"><l>Choice</l><block s="reportSum"><block var="K"/><l>1</l></block></block><block s="doFor"><l>i</l><block var="K"/><l>2</l><script><block s="doIf"><block s="reportEquals"><custom-block s="Compare %n %n"><custom-block s="A [ %n ]"><block s="reportListItem"><block var="i"/><block var="Children"/></block></custom-block><custom-block s="A [ %n ]"><block s="reportListItem"><block var="Choice"/><block var="Children"/></block></custom-block></custom-block><l>1</l></block><script><block s="doSetVar"><l>Choice</l><block var="i"/></block></script></block></script></block><block s="doIf"><block s="reportGreaterThan"><block var="*q"/><l>1</l></block><script><block s="doIf"><block s="reportEquals"><custom-block s="Compare %n %n"><custom-block s="A [ %n ]"><block s="reportListItem"><l>1</l><block var="Children"/></block></custom-block><custom-block s="A [ %n ]"><block s="reportListItem"><block var="Choice"/><block var="Children"/></block></custom-block></custom-block><l>1</l></block><script><block s="doSetVar"><l>Choice</l><l>1</l></block></script></block></script></block><block s="doIfElse"><block s="reportEquals"><custom-block s="Compare %n %n"><custom-block s="A [ %n ]"><block s="reportListItem"><block var="Choice"/><block var="Children"/></block></custom-block><block var="Chvalue"/></custom-block><l>1</l></block><script><block s="doSetVar"><l>Changed?</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><custom-block s="Write %n %n %b"><block var="Node"/><custom-block s="A [ %n ]"><block s="reportListItem"><block var="Choice"/><block var="Children"/></block></custom-block><l><bool>true</bool></l></custom-block><block s="doSetVar"><l>Node</l><block s="reportListItem"><block var="Choice"/><block var="Children"/></block></block><block s="doIfElse"><block s="reportEquals"><block var="Choice"/><l>1</l></block><script><block s="doSetVar"><l>*q</l><block s="reportDifference"><block var="*q"/><l>1</l></block></block><block s="doUntil"><block s="reportEquals"><block s="reportModulus"><block var="*q"/><l>2</l></block><l>1</l></block><script><block s="doSetVar"><l>*q</l><block s="reportQuotient"><block var="*q"/><l>2</l></block></block><block s="doSetVar"><l>*sizes</l><block s="reportCONS"><block s="reportSum"><l>1</l><block s="reportCombine"><block var="*sizes"/><block s="reifyReporter"><autolambda><block s="reportSum"><l></l><l></l></block></autolambda><list></list></block></block></block><custom-block s="all but last of %l"><block var="*sizes"/></custom-block></block></block></script></block></script><script><block s="doRepeat"><block s="reportDifference"><block var="Choice"/><l>1</l></block><script><block s="doSetVar"><l>*q</l><block s="reportProduct"><block var="*q"/><l>2</l></block></block><block s="doSetVar"><l>*sizes</l><block s="reportConcatenatedLists"><list><block s="reportCDR"><block var="*sizes"/></block><block s="reportNewList"><list><block s="reportDifference"><block s="reportDifference"><block s="reportListItem"><l>1</l><block var="*sizes"/></block><l>1</l></block><block s="reportCombine"><block s="reportCDR"><block var="*sizes"/></block><block s="reifyReporter"><autolambda><block s="reportSum"><l></l><l></l></block></autolambda><list></list></block></block></block></list></block></list></block></block></script></block><block s="doSetVar"><l>*q</l><l>1</l></block></script></block></script><script><block s="doIf"><block var="Changed?"/><script><custom-block s="Write %n %n %b"><block var="Node"/><block var="Chvalue"/><l><bool>true</bool></l></custom-block></script></block><block s="doStopThis"><l><option>this block</option></l></block></script></block></script></block></script></block></script></block-definition><block-definition s="Sunken Smoothsort" type="command" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doDeclareVariables"><list><l>focus</l><l>q</l><l>c</l><l>d</l></list></block><block s="doSetVar"><l>q</l><l>1</l></block><block s="doSetVar"><l>focus</l><l>3</l></block><block s="doSetVar"><l>c</l><l>1</l></block><block s="doSetVar"><l>d</l><l>1</l></block><block s="doUntil"><block s="reportEquals"><block var="focus"/><block var="Length"/></block><script><block s="doIfElse"><block s="reportEquals"><block s="reportModulus"><block s="reportSum"><block var="q"/><l>1</l></block><l>4</l></block><l>0</l></block><script><custom-block s="Sink %n %n %n %n %b"><block s="reportDifference"><block var="focus"/><l>1</l></block><l>1</l><block var="c"/><block var="d"/><l><bool>false</bool></l></custom-block><block s="doSetVar"><l>q</l><block s="reportQuotient"><block s="reportSum"><block var="q"/><l>1</l></block><l>4</l></block></block><block s="doSetVar"><l>d</l><block s="reportSum"><block var="c"/><block s="reportSum"><block var="d"/><l>1</l></block></block></block><block s="doSetVar"><l>c</l><block s="reportSum"><block var="c"/><block s="reportSum"><block var="d"/><l>1</l></block></block></block></script><script><custom-block s="Sink %n %n %n %n %b"><block s="reportDifference"><block var="focus"/><l>1</l></block><block s="reportIfElse"><block s="reportLessThan"><block s="reportSum"><block var="focus"/><block var="c"/></block><block var="Length"/></block><l>1</l><block var="q"/></block><block var="c"/><block var="d"/><l><bool>false</bool></l></custom-block><block s="doSetVar"><l>q</l><block s="reportProduct"><block var="q"/><l>2</l></block></block><block s="doSetVar"><l>d</l><block s="reportDifference"><block var="c"/><block s="reportSum"><block var="d"/><l>1</l></block></block></block><block s="doSetVar"><l>c</l><block s="reportDifference"><block var="c"/><block s="reportSum"><block var="d"/><l>1</l></block></block></block><block s="doUntil"><block s="reportEquals"><block s="reportSum"><block var="c"/><block var="d"/></block><l>0</l></block><script><block s="doSetVar"><l>q</l><block s="reportProduct"><block var="q"/><l>2</l></block></block><block s="doSetVar"><l>d</l><block s="reportDifference"><block var="c"/><block s="reportSum"><block var="d"/><l>1</l></block></block></block><block s="doSetVar"><l>c</l><block s="reportDifference"><block var="c"/><block s="reportSum"><block var="d"/><l>1</l></block></block></block></script></block><block s="doChangeVar"><l>q</l><l>1</l></block></script></block><block s="doChangeVar"><l>focus</l><l>1</l></block></script></block><custom-block s="Sink %n %n %n %n %b"><block s="reportDifference"><block var="focus"/><l>1</l></block><block var="q"/><block var="c"/><block var="d"/><block s="reportEquals"><block s="reportSum"><block var="c"/><block var="d"/></block><l>0</l></block></custom-block><block s="doUntil"><block s="reportEquals"><block var="focus"/><l>2</l></block><script><block s="doChangeVar"><l>q</l><l>-1</l></block><block s="doIfElse"><block s="reportEquals"><block s="reportSum"><block var="c"/><block var="d"/></block><l>0</l></block><script><block s="doChangeVar"><l>focus</l><l>-1</l></block><block s="doUntil"><block s="reportEquals"><block s="reportModulus"><block var="q"/><l>2</l></block><l>1</l></block><script><block s="doSetVar"><l>q</l><block s="reportQuotient"><block var="q"/><l>2</l></block></block><block s="doSetVar"><l>c</l><block s="reportSum"><block var="c"/><block s="reportSum"><block var="d"/><l>1</l></block></block></block><block s="doSetVar"><l>d</l><block s="reportDifference"><block var="c"/><block s="reportSum"><block var="d"/><l>1</l></block></block></block></script></block></script><script><block s="doSetVar"><l>focus</l><block s="reportDifference"><block var="focus"/><block s="reportSum"><l>1</l><block s="reportSum"><block var="c"/><block var="d"/></block></block></block></block><block s="doSetVar"><l>q</l><block s="reportSum"><block s="reportProduct"><block var="q"/><l>2</l></block><l>1</l></block></block><block s="doSetVar"><l>focus</l><block s="reportSum"><block var="focus"/><block var="c"/></block></block><block s="doSetVar"><l>d</l><block s="reportDifference"><block var="c"/><block s="reportSum"><block var="d"/><l>1</l></block></block></block><block s="doSetVar"><l>c</l><block s="reportDifference"><block var="c"/><block s="reportSum"><block var="d"/><l>1</l></block></block></block><block s="doIf"><block s="reportGreaterThan"><block var="q"/><l>1</l></block><script><custom-block s="Sink %n %n %n %n %b"><block s="reportDifference"><block var="focus"/><l>1</l></block><block var="q"/><block var="c"/><block var="d"/><l><bool>true</bool></l></custom-block></script></block><block s="doSetVar"><l>q</l><block s="reportSum"><block s="reportProduct"><block var="q"/><l>2</l></block><l>1</l></block></block><block s="doSetVar"><l>focus</l><block s="reportSum"><block var="focus"/><block var="c"/></block></block><block s="doSetVar"><l>d</l><block s="reportDifference"><block var="c"/><block s="reportSum"><block var="d"/><l>1</l></block></block></block><block s="doSetVar"><l>c</l><block s="reportDifference"><block var="c"/><block s="reportSum"><block var="d"/><l>1</l></block></block></block><custom-block s="Sink %n %n %n %n %b"><block s="reportDifference"><block var="focus"/><l>1</l></block><block var="q"/><block var="c"/><block var="d"/><l><bool>true</bool></l></custom-block></script></block><custom-block s="visualize %mult%n"><list></list></custom-block></script></block></script></block-definition><block-definition s="Sink %&apos;Node&apos; %&apos;*q&apos; %&apos;*c&apos; %&apos;*d&apos; %&apos;Semi?&apos;" type="command" category="other"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input><input type="%n"></input><input type="%n"></input><input type="%b">false</input></inputs><script><block s="doDeclareVariables"><list><l>Children</l><l>Choice</l><l>Chvalue</l><l>Changed?</l></list></block><block s="doSetVar"><l>Chvalue</l><custom-block s="A [ %n ]"><block var="Node"/></custom-block></block><block s="doIfElse"><block var="Semi?"/><script><block s="doSetVar"><l>Choice</l><block s="reportDifference"><block var="Node"/><block s="reportSum"><l>1</l><block s="reportSum"><block var="*c"/><block var="*d"/></block></block></block></block><block s="doIfElse"><block s="reportEquals"><custom-block s="Compare %n %n"><custom-block s="A [ %n ]"><block var="Choice"/></custom-block><custom-block s="A [ %n ]"><block var="Node"/></custom-block></custom-block><l>1</l></block><script><block s="doSetVar"><l>Changed?</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><custom-block s="Write %n %n %b"><block var="Node"/><custom-block s="A [ %n ]"><block var="Choice"/></custom-block><l><bool>true</bool></l></custom-block><block s="doSetVar"><l>Node</l><block var="Choice"/></block><block s="doChangeVar"><l>*q</l><l>-1</l></block><block s="doUntil"><block s="reportEquals"><block s="reportModulus"><block var="*q"/><l>2</l></block><l>1</l></block><script><block s="doSetVar"><l>*q</l><block s="reportQuotient"><block var="*q"/><l>2</l></block></block><block s="doSetVar"><l>*c</l><block s="reportSum"><block var="*c"/><block s="reportSum"><block var="*d"/><l>1</l></block></block></block><block s="doSetVar"><l>*d</l><block s="reportDifference"><block var="*c"/><block s="reportSum"><block var="*d"/><l>1</l></block></block></block></script></block></script><script><block s="doStopThis"><l><option>this block</option></l></block></script></block></script><script><block s="doSetVar"><l>Changed?</l><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block><block s="doForever"><script><block s="doIfElse"><block s="reportEquals"><block s="reportSum"><block var="*c"/><block var="*d"/></block><l>0</l></block><script><block s="doIfElse"><block s="reportEquals"><block var="*q"/><l>1</l></block><script><block s="doIf"><block var="Changed?"/><script><custom-block s="Write %n %n %b"><block var="Node"/><block var="Chvalue"/><l><bool>true</bool></l></custom-block></script></block><block s="doStopThis"><l><option>this block</option></l></block></script><script><block s="doIfElse"><block s="reportEquals"><custom-block s="Compare %n %n"><custom-block s="A [ %n ]"><block s="reportDifference"><block var="Node"/><l>1</l></block></custom-block><block var="Chvalue"/></custom-block><l>1</l></block><script><block s="doSetVar"><l>*q</l><block s="reportDifference"><block var="*q"/><l>1</l></block></block><block s="doSetVar"><l>Changed?</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><custom-block s="Write %n %n %b"><block var="Node"/><custom-block s="A [ %n ]"><block s="reportDifference"><block var="Node"/><l>1</l></block></custom-block><l><bool>true</bool></l></custom-block><block s="doSetVar"><l>Node</l><block s="reportDifference"><block var="Node"/><l>1</l></block></block><block s="doUntil"><block s="reportEquals"><block s="reportModulus"><block var="*q"/><l>2</l></block><l>1</l></block><script><block s="doSetVar"><l>*q</l><block s="reportQuotient"><block var="*q"/><l>2</l></block></block><block s="doSetVar"><l>*c</l><block s="reportSum"><block var="*c"/><block s="reportSum"><block var="*d"/><l>1</l></block></block></block><block s="doSetVar"><l>*d</l><block s="reportDifference"><block var="*c"/><block s="reportSum"><block var="*d"/><l>1</l></block></block></block></script></block></script><script><block s="doIf"><block var="Changed?"/><script><custom-block s="Write %n %n %b"><block var="Node"/><block var="Chvalue"/><l><bool>true</bool></l></custom-block></script></block><block s="doStopThis"><l><option>this block</option></l></block></script></block></script></block></script><script><block s="doSetVar"><l>Children</l><block s="reportNewList"><list><block s="reportDifference"><block var="Node"/><l>1</l></block></list></block></block><block s="doSetVar"><l>Children</l><block s="reportCONS"><block s="reportDifference"><block s="reportListItem"><l>1</l><block var="Children"/></block><block var="*d"/></block><block var="Children"/></block></block><block s="doSetVar"><l>Children</l><block s="reportCONS"><block s="reportDifference"><block s="reportListItem"><l>1</l><block var="Children"/></block><block var="*c"/></block><block var="Children"/></block></block><block s="doSetVar"><l>Choice</l><block s="reportIfElse"><block s="reportEquals"><custom-block s="Compare %n %n"><custom-block s="A [ %n ]"><block s="reportListItem"><l>2</l><block var="Children"/></block></custom-block><custom-block s="A [ %n ]"><block s="reportListItem"><l>3</l><block var="Children"/></block></custom-block></custom-block><l>1</l></block><l>2</l><l>3</l></block></block><block s="doIf"><block s="reportGreaterThan"><block var="*q"/><l>1</l></block><script><block s="doIf"><block s="reportEquals"><custom-block s="Compare %n %n"><custom-block s="A [ %n ]"><block s="reportListItem"><l>1</l><block var="Children"/></block></custom-block><custom-block s="A [ %n ]"><block s="reportListItem"><block var="Choice"/><block var="Children"/></block></custom-block></custom-block><l>1</l></block><script><block s="doSetVar"><l>Choice</l><l>1</l></block></script></block></script></block><block s="doIfElse"><block s="reportEquals"><custom-block s="Compare %n %n"><custom-block s="A [ %n ]"><block s="reportListItem"><block var="Choice"/><block var="Children"/></block></custom-block><block var="Chvalue"/></custom-block><l>1</l></block><script><block s="doSetVar"><l>Changed?</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><custom-block s="Write %n %n %b"><block var="Node"/><custom-block s="A [ %n ]"><block s="reportListItem"><block var="Choice"/><block var="Children"/></block></custom-block><l><bool>true</bool></l></custom-block><block s="doSetVar"><l>Node</l><block s="reportListItem"><block var="Choice"/><block var="Children"/></block></block><block s="doIfElse"><block s="reportEquals"><block var="Choice"/><l>1</l></block><script><block s="doSetVar"><l>*q</l><block s="reportDifference"><block var="*q"/><l>1</l></block></block><block s="doUntil"><block s="reportEquals"><block s="reportModulus"><block var="*q"/><l>2</l></block><l>1</l></block><script><block s="doSetVar"><l>*q</l><block s="reportQuotient"><block var="*q"/><l>2</l></block></block><block s="doSetVar"><l>*c</l><block s="reportSum"><block var="*c"/><block s="reportSum"><block var="*d"/><l>1</l></block></block></block><block s="doSetVar"><l>*d</l><block s="reportDifference"><block var="*c"/><block s="reportSum"><block var="*d"/><l>1</l></block></block></block></script></block></script><script><block s="doRepeat"><block s="reportDifference"><block var="Choice"/><l>1</l></block><script><block s="doSetVar"><l>*q</l><block s="reportProduct"><block var="*q"/><l>2</l></block></block><block s="doSetVar"><l>*d</l><block s="reportDifference"><block var="*c"/><block s="reportSum"><block var="*d"/><l>1</l></block></block></block><block s="doSetVar"><l>*c</l><block s="reportDifference"><block var="*c"/><block s="reportSum"><block var="*d"/><l>1</l></block></block></block></script></block><block s="doSetVar"><l>*q</l><l>1</l></block></script></block></script><script><block s="doIf"><block var="Changed?"/><script><custom-block s="Write %n %n %b"><block var="Node"/><block var="Chvalue"/><l><bool>true</bool></l></custom-block></script></block><block s="doStopThis"><l><option>this block</option></l></block></script></block></script></block></script></block></script></block-definition></blocks><variables><variable name="Length"><l>100</l></variable><variable name="Comparisons"><l>1890</l></variable><variable name="Writes"><l>549</l></variable><variable name="List"><list struct="atomic" id="2158">1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100</list></variable><variable name="Reads"><l>4010</l></variable><variable name="Swaps"><l>0</l></variable></variables></project><media name="K-ary Smoothsort" app="Snap! 6, https://snap.berkeley.edu" version="1"></media></snapdata>