<snapdata remixID="9403670"><project name="cartesian product" app="Snap! 5.4, http://snap.berkeley.edu" version="1"><notes></notes><thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAAEW0lEQVR4nO3dQSt0URzHcS/AwtJCWckkSpYoG7uxmFEW9jQJeQmUsrOysUBZzIaytHM2slVjouhaYEOJSMpI/2fxNLqPmscZ9za/O+73U7PRzOm483Xu3O5ptBhi4ZxL3ePp6SnycWuJ4dinnnPO3t7e1NNoOOecnZycRBqDACNyztnr66t6GjJR//gIMCLnnJmZBUGQusfHx4c55+z+/v7Hx48AI0pzgEEQmHPO7u7ufnz8CDCicICrq6u2u7vr/eZNTEzEEsH+/r4FQWBra2uRx9rY2KhrLAIUCwc4Ojpq2WzW6407Ojqy/v5+29zcjC3AQqEQeaz19XULgsCmp6cJsBlwCiZAKQIkQKlaAaYBASYAARKgVDjAi4sL7wBvb2/NzOzy8jLyHFRjEWAC/HQFrFQq9vLyEsstPNVYBJgAnIIJUIqrYAKUYgUkQKlwgIuLizY3N+cdYLFYjG0eAwMDDR+LABPg6wo4Pj7uHeD29nYsc7i6ujIzs1Kp1NCxCDABwgG2trZaZ2dnwwM0MxseHm74WASYAHwGJEApAiRAKQIkQKlwgF1dXdbW1uYV4Pv7uz08PFilUollHplMJpZx6pkXASZAOMCDgwMbHBxs+L1gs/guaLgX3GQ4BROgFAESoBQBEqAUARKgVDjAYrFoKysr3gFubW3FNo+4xuIipMl8XQHrCTDOW3FxjcWG1CbDKZgApdiQSoBSrIAEKBUOcGhoyDo6OrwDVGwi9eG7UZYAEyAc4OTkpLW3t3sFqNpE6sP3goYAEyAc4NTUlC0tLXmvgIpNpD4IsInwGZAApQiQAKUIkAClwgH29PTYwsKCd4CKTaQ+fOdFgAkQDnBkZOTza3d9KDaR+uAipIlwCiZAKQIkQCkCJEApAiRAqa8BVv+/xnfivnBQbG4lwARIwjekmmk2txJgAnAKJkApNqQSoFSaV0AzI0C1r9+Qury87B1gnN+QqhiLFTABwgHOzMzY/Px8w2/FKcciQLFwgIVCwWZnZ1MTICtgAvAZkAClqgGmlXPOnp+ff/x6Aozo8fExtRGen59H/t0JMAalUsmcc+acs3K5bGZ/N4lWf/abH1ERYA2ZTMZ2dnbqek31DTk8PEztqlgvAvyPfD5vuVzOcrmc9fb22vX1dc3nlkolOz4+NuecnZ6eNnCWzY0Av1ENMPzI5/M2Njb2z/PiOiWlDQF+o1aA2Wz28znlctnOzs6Es2xeBPgf4VNwX1+f3dzcqKf06xBgDd3d3ba3t6eexq9HgJAiQEgRIKQIEFIECCkChBQBQooAIUWAkCJASBEgpAgQUgQIKQKEFAFCigAhRYCQIkBIESCkCBBSBAgpAoQUAUKKACFFgJAiQEgRIKQIEFIECCkChBQBQooAIUWAkCJASBEgpAgQUgQIKQKEFAFCigAhRYCQIkBIESCkCBBSBAgpAoQUAUKKACFFgJAiQEgRIKQIEFIECCkChBQBQooAIUWAkPoDUQEx3PWR3ewAAAAASUVORK5CYII=</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,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAACtUlEQVR4nO3BMQEAAADCoPVPbQwfoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+Bo3+AAF/RMkcAAAAAElFTkSuQmCC</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="31" y="42"><block s="receiveGo"></block><block s="bubble"><custom-block s="%n dimensional cartesian product of %l"><l>3</l><block s="reportNewList"><list><l>0</l><l>1</l></list></block></custom-block></block></script></scripts></sprite></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="%&apos;n&apos; dimensional for %&apos;point&apos; in %&apos;range&apos; %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%n">2</input><input type="%upvar"></input><input type="%l">1</input><input type="%ca"></input></inputs><script><block s="doIf"><block s="reportLessThan"><block var="n"/><l>0</l></block><script><block s="doStopThis"><l><option>this block</option></l></block></script></block><block s="doIf"><block s="reportEquals"><block var="n"/><l>0</l></block><script><block s="doSetVar"><l>point</l><block s="reportNewList"><list></list></block></block><block s="doRun"><block var="action"/><list><block var="point"/></list></block><block s="doStopThis"><l><option>this block</option></l></block></script></block><custom-block s="%n dimensional for %upvar in %l %ca"><block s="reportDifference"><block var="n"/><l>1</l></block><l>sub</l><block var="range"/><script><block s="doForEach"><l>top</l><block var="range"/><script><block s="doSetVar"><l>point</l><block s="reportCONS"><block var="top"/><block var="sub"/></block></block><block s="doRun"><block var="action"/><list><block var="point"/></list></block></script></block></script></custom-block></script></block-definition><block-definition s="%&apos;n&apos; dimensional cartesian product of %&apos;range&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%n">2</input><input type="%l"></input></inputs><script><block s="doDeclareVariables"><list><l>total</l></list></block><block s="doSetVar"><l>total</l><block s="reportNewList"><list></list></block></block><custom-block s="%n dimensional for %upvar in %l %ca"><block var="n"/><l>point</l><block var="range"/><script><block s="doAddToList"><block var="point"/><block var="total"/></block></script></custom-block><block s="doReport"><block var="total"/></block></script></block-definition></blocks><variables></variables></project><media name="cartesian product" app="Snap! 5.4, http://snap.berkeley.edu" version="1"></media></snapdata>