<snapdata remixID="9100178"><project name="U3L1-Tic-Tac-Toe Setup" 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="true" hyperops="true" codify="false" inheritance="false" 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="Square" idx="1" x="10000" y="11100000" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="2" color="80,80,80,1" pen="tip" id="8"><costumes><list id="9"><item><costume name="Empty" center-x="26" center-y="26" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAAAAXNSR0IArs4c6QAAAMtJREFUaEPtmsEJg0AABLUJ/UoqSS0JZ1EhqcWvEvKwoxwBC9jPYI458LmsO3PP67vGTl/3XOu3tLBrmi6f36DbvSyv5+OvN63bu5tL2R10Vo0aOquZ4780pCGYgFcOBh7XaShGBgc0BAOP6zQUI4MDGoKBx3UaipHBAQ3BwOM6DcXI4ICGYOBxnYZiZHBAQzDwuE5DMTI4oCEYeFynoRgZHNAQDDyu01CMDA5oCAYe12koRgYHNAQDj+s0FCODA20bqjCbeNE4DOP2Bcm2nYaMbuBPAAAAAElFTkSuQmCC" id="10"/></item><item><costume name="X" center-x="26" center-y="26" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAAAAXNSR0IArs4c6QAAAgVJREFUaEPt2jtPwlAUB/DDBiERZ6KGkS9AYHQiBsGE+GhRIBiR1efgaMTNGL+FYXN0VDeNCS4+Vl+JOuJGXGxJSHyAnHvvOb0t0qnDTXp/99/e9J/WBwCRTCa7FQz6/da5p49m8+PaZwnGY7H4cbG06GnQ2+sLXNXrDy2QYeSOarXDYS/Hc35xCbvV6gDk2hD/Z0KPT88wNjriqlS6zQmV0FK5AuFwGKo7265A3dzeQSadhr39A5jOTn2bEwrUaLxDebkC0WhUO6qNWcgXOs4FBbKXwA2oXhh7nmiQbhQGIwzShcJipEBOo0Qw0iCnUKIYJRA3SgajDOJCyWJIQNQoFQwZiAqliiEFqaIoMOQgWRQVhgUkiqLEsIGwKGoMK6gXigPDDuqG4sI4AvqJMk2jVc669Rl7vMohVB9ULmT3qXyhCGenJ7CyusZWFB0D2bfZZCoFgUAAZmbnvA36+sxsbqyz1nn2hDptAJx1nhX0127GhWIDYbZmDhQLCINp75jUKHKQCIYDRQqSwVCjyEAqGEoUCYgCQ4VSBlFiKFBKIA6MKkoaxIlRQUmBnMDIooRBTmJkUEIgHRhRFBqkEyOCQoHcgMGiUKBkcgLiiQRbyxSt9u0XWjM3L/fR2I2f9W1UKDT0ay1QCYmuoM7xA5DO1cdcu78T6rcfACNWpCVMrB4Yc/8JLoh8Qs0YXwgAAAAASUVORK5CYII=" id="11"/></item><item><costume name="O" center-x="26" center-y="26" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAAAAXNSR0IArs4c6QAABGRJREFUaEPtmktME1EUhv+uFXClCwQVedTHwhaNbhRBQ4zgK2oUfMSoBSUuJEbjhlLKxiAVF8YHxcSoQPERH2BiiIroQhBpNRFESTSCzx0PXSNnzE1aOtO5M3OnINJk0kXvPXO+8585994ztWCSfSyjPKtHr5bJwDV3blKnBLT/gKPlck31P83U1t6BAofjzRTQRJVxSiFeZZofPYHfH0Dvh/doefIYnz59DJu6bfsOxMfHY4nNjqzMDCQmzOY1rzhOqEJ9/V/g9dag9vo1pC9dJl12uw3WtFRZZ+nmPe8/4HXAj/v37krjd+blY+uWjbrBhAAFgxQcKkJ+3g5d0b595z589XUYHBhA4eEiXWCGga5crYXb5QSBHC50IC4uVnd02URK18qKCiQkJqK01KkpOLqBBgeHUOoqQ3dXF9zl5VixfJlhkGADZP/CJS+qL57HxWovstdmcdnXBUQ3O+goQGxsLM54KoWoouQtpeHxY8U47aniSkHNQAzGarWi3O3iiprRQV3d77AhN5cLSjPQgYMFiImJwdkqj1E/Nc0nqMWLFuJF28uI6a0J6Nz5S2h92oIab7WpaaaWfoFAQPH+3EAsQm+7urFo4QJN0RU5+GjxMcmcUoZwA1Gq2ezpOFJUKNI/zbboGbbZbKir98mmHhcQDcrP24lIUmv2zMAESv2AvxNyRx0uIJI5OSV13NVhMWAqNTY1haW/KhBta+YkJmBgYHBcCoGSkKcqPPj9azhs6VAFoq0NbR6jXabVMpKKVPHRYjQ3PwwZqgpE6bZyVQbXKq3mhOjfk5LmY2zaqQLJTRLtmF57csFWBbJYLBgZGdF7T1PnUbWjT/BSEhGIfvR4PLh5w2eqY3qN0zGjwecLKd+qQF6vV7be63VC5Dxyfqx/U0AiI2zUlmaFlGq9UUdEzafD3/NnrSFr5P9V5SiS2dnrTOkZiFCJTgDrc3JDFn1VhUqcLsxPTsG+vbtE+CDUBi36T1tbQ7pCqkCsVzbR1iLW6tK8l6Ot+owZcfjc16+pPyZUChljlDnTpsfg5Im/J1j2UVWIBipNNttpJfuRgswFRGei1RkZE+rE+vPHd9k2GhcQU4m+o9WLU1KHHTiVHgFuIKaSUnMiWulHpTolNS3s2dH0DLHBrC07Xs0SOnZ3vuqI2BfkVohBUYHo6emJerORBVOuMaK5yo1Np2hD8cKQn5oVGquUy1VqaieVTqVnKivCegdKz6xuIDJIOU3vb5wut/CtERWhsjI3+vv6UHW2ijtohoCYxM6SEultm8PhMPziixbNa7X1kip63goaBiKoYCcys9aE7YB5SjopUlffIClONvQGRwgQc5jA7txrxIOmRqm8bty0WWohL023S0MWWNOk7isdHIeHf+Hrt+/o7e2VxtK1a/ce5OTkGFJZKFCwEhTxjld+yWH6r8LQ0BBu3WyQhsyblySpQC/OGLCod7SmAfGkmRljpoDMiKpIm5NbodFITYp/NM6cOav9DzFOiaTaEApUAAAAAElFTkSuQmCC" id="12"/></item></list></costumes><sounds><list struct="atomic" id="13"></list></sounds><blocks></blocks><variables><variable name="clone number"><l>9</l></variable></variables><scripts><script x="10" y="10"><block s="receiveGo"></block><block s="doSetVar"><l>computer pick</l><l>0</l></block><block s="doSetVar"><l>board</l><block s="reportNewList"><list><l>empty</l><l>empty</l><l>empty</l><l>empty</l><l>empty</l><l>empty</l><l>empty</l><l>empty</l><l>empty</l></list></block></block><block s="doSetVar"><l>clone number</l><l>0</l></block><block s="doSetVar"><l>winning triples</l><block s="reportNewList"><list><block s="reportNewList"><list><l>1</l><l>2</l><l>3</l></list></block><block s="reportNewList"><list><l>1</l><l>4</l><l>7</l></list></block><block s="reportNewList"><list><l>1</l><l>5</l><l>9</l></list></block><block s="reportNewList"><list><l>2</l><l>5</l><l>8</l></list></block><block s="reportNewList"><list><l>3</l><l>5</l><l>7</l></list></block><block s="reportNewList"><list><l>3</l><l>6</l><l>9</l></list></block><block s="reportNewList"><list><l>7</l><l>8</l><l>9</l></list></block><block s="reportNewList"><list><l>4</l><l>5</l><l>6</l></list></block></list></block></block><block s="doSetVar"><l>X&apos;S turn</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><block s="gotoXY"><l>-50</l><l>50</l></block><custom-block s="make TIC TAC TOE board"></custom-block></script><script x="62" y="568.8"><custom-block s="if xwins?"></custom-block></script><script x="31" y="246.00000000000003"><block s="receiveOnClone"></block></script><script x="367" y="215.00000000000003"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="doIf"><block s="reportEquals"><block s="getCostumeIdx"></block><l>1</l></block><script><block s="doIfElse"><block s="reportEquals"><block var="X&apos;S turn"/><block s="reportBoolean"><l><bool>true</bool></l></block></block><script><block s="doSwitchToCostume"><l>X</l></block><block s="doReplaceInList"><block var="clone number"/><block var="board"/><l>X</l></block><block s="doSetVar"><l>X&apos;S turn</l><block s="reportBoolean"><l><bool>false</bool></l></block></block></script><script><block s="doSwitchToCostume"><l>O</l></block><block s="doReplaceInList"><block var="clone number"/><block var="board"/><l>O</l></block><block s="doSetVar"><l>X&apos;S turn</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><custom-block s="computer turn"></custom-block></script></block></script></block><block s="doIf"><custom-block s="if xwins?"></custom-block><script><block s="bubble"><l>X WINS</l></block></script></block><block s="doIf"><custom-block s="%s Wins?"><l>O</l></custom-block><script><block s="bubble"><l>O WINS</l></block></script></block><block s="doIf"><custom-block s="draw?"></custom-block><script><block s="bubble"><l>ITS A DRAW</l></block></script></block></script></scripts></sprite><watcher scope="Square" s="xPosition" style="normal" x="10" y="10" color="74,108,212" hidden="true"/><watcher scope="Square" s="yPosition" style="normal" x="10" y="31.000001999999995" color="74,108,212" hidden="true"/><watcher var="X&apos;S turn" style="normal" x="10" y="52.00000399999999" color="243,118,29"/><watcher var="board" style="normal" x="10" y="76.00000599999998" color="243,118,29" extX="80" extY="70"/><watcher scope="Square" var="clone number" style="normal" x="10" y="169.00000799999998" color="243,118,29"/><watcher var="winning triples" style="normal" x="10" y="190.00000999999997" color="243,118,29" extX="185.5615234375" extY="150"/><watcher var="computer pick" style="normal" x="10" y="338.999998" color="243,118,29"/></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="label %&apos;text&apos; of size %&apos;size&apos;" type="command" category="pen"><comment x="0" y="0" w="90" collapsed="false">LABEL will stamp text on the stage at the given font size. The direction of the text is the direction the sprite is facing, and color will match the pen color.</comment><header></header><code></code><translations></translations><inputs><input type="%txt">Hello!</input><input type="%n">12</input></inputs><script><block s="doRun"><block s="reportJSFunction"><list><l>text</l><l>size</l></list><l>var stage = this.parentThatIsA(StageMorph),&#xD;    context = stage.penTrails().getContext(&apos;2d&apos;),&#xD;    rotation = radians(this.direction() - 90),&#xD;    trans = new Point(&#xD;      this.center().x - stage.left(),&#xD;      this.center().y - stage.top()&#xD;    ),&#xD;    isWarped = this.Warped,&#xD;    len,&#xD;    pos;&#xD;&#xD;if (isWarped) {endWarp(); }&#xD;context.save();&#xD;context.font = size + &apos;px monospace&apos;;&#xD;context.textAlign = &apos;left&apos;;&#xD;context.textBaseline = &apos;alphabetic&apos;;&#xD;context.fillStyle = this.color.toString();&#xD;len = context.measureText(text).width;&#xD;trans = trans.multiplyBy(1 / stage.scale);&#xD;context.translate(trans.x, trans.y);&#xD;context.rotate(rotation);&#xD;context.fillText(text, 0, 0);&#xD;context.translate(-trans.x, -trans.y);&#xD;context.restore();&#xD;pos = new Point(&#xD;  len * Math.sin(radians(this.direction())),&#xD;  len * Math.cos(radians(this.direction())));&#xD;pos = pos.add(new Point(this.xPosition(), this.yPosition()));&#xD;this.gotoXY(pos.x, pos.y, false);&#xD;this.changed();&#xD;if (isWarped) {this.startWarp(); }&#xD;stage.changed();</l></block><list><block var="text"/><block var="size"/></list></block></script></block-definition><block-definition s="map %&apos;function&apos; over %&apos;lists&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%repRing"></input><input type="%mult%l"></input></inputs><script><block s="doWarp"><script><block s="doDeclareVariables"><list><l>mapone</l><l>mapmany</l></list></block><block s="doSetVar"><l>mapone</l><block s="reifyScript"><script><block s="doIf"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doReport"><block s="reportCONS"><block s="evaluate"><block var="function"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><block s="evaluate"><block var="mapone"/><list><block s="reportCDR"><block var="data"/></block></list></block></block></block></script><list><l>data</l></list></block></block><block s="doSetVar"><l>mapmany</l><block s="reifyScript"><script><block s="doIf"><custom-block s="empty? %l"><block s="reportListItem"><l>1</l><block var="data lists"/></block></custom-block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doReport"><block s="reportCONS"><block s="evaluate"><block var="function"/><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><block s="reportListItem"><l>1</l><l/></block></autolambda><list></list></block><list><block var="data lists"/></list></custom-block></block><block s="evaluate"><block var="mapmany"/><list><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><block s="reportCDR"><l/></block></autolambda><list></list></block><list><block var="data lists"/></list></custom-block></list></block></block></block></script><list><l>data lists</l></list></block></block><block s="doIfElse"><custom-block s="empty? %l"><block s="reportCDR"><block var="lists"/></block></custom-block><script><block s="doReport"><block s="evaluate"><block var="mapone"/><list><block s="reportListItem"><l>1</l><block var="lists"/></block></list></block></block></script><script><block s="doReport"><block s="evaluate"><block var="mapmany"/><list><block var="lists"/></list></block></block></script></block></script></block></script></block-definition><block-definition s="empty? %&apos;data&apos;" type="predicate" category="lists"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportEquals"><block var="data"/><block s="reportNewList"><list></list></block></block></block></script></block-definition><block-definition s="keep items such that %&apos;pred&apos; from %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%predRing"></input><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doIf"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doIfElse"><block s="evaluate"><block var="pred"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><script><block s="doReport"><block s="reportCONS"><block s="reportListItem"><l>1</l><block var="data"/></block><custom-block s="keep items such that %predRing from %l"><block var="pred"/><block s="reportCDR"><block var="data"/></block></custom-block></block></block></script><script><block s="doReport"><custom-block s="keep items such that %predRing from %l"><block var="pred"/><block s="reportCDR"><block var="data"/></block></custom-block></block></script></block></script></block></script></block-definition><block-definition s="combine with %&apos;function&apos; items of %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%repRing"></input><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doIf"><custom-block s="empty? %l"><block s="reportCDR"><block var="data"/></block></custom-block><script><block s="doReport"><block s="reportListItem"><l>1</l><block var="data"/></block></block></script></block><block s="doReport"><block s="evaluate"><block var="function"/><list><block s="reportListItem"><l>1</l><block var="data"/></block><custom-block s="combine with %repRing items of %l"><block var="function"/><block s="reportCDR"><block var="data"/></block></custom-block></list></block></block></script></block></script></block-definition><block-definition s="if %&apos;test&apos; then %&apos;true&apos; else %&apos;false&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%b"></input><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doIfElse"><block var="test"/><script><block s="doReport"><block s="evaluate"><block var="true"/><list></list></block></block></script><script><block s="doReport"><block s="evaluate"><block var="false"/><list></list></block></block></script></block></script></block-definition><block-definition s="for %&apos;i&apos; = %&apos;start&apos; to %&apos;end&apos; %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%upvar"></input><input type="%n">1</input><input type="%n">10</input><input type="%cs"></input></inputs><script><block s="doDeclareVariables"><list><l>step</l><l>tester</l></list></block><block s="doIfElse"><block s="reportGreaterThan"><block var="start"/><block var="end"/></block><script><block s="doSetVar"><l>step</l><l>-1</l></block><block s="doSetVar"><l>tester</l><block s="reifyReporter"><autolambda><block s="reportLessThan"><block var="i"/><block var="end"/></block></autolambda><list></list></block></block></script><script><block s="doSetVar"><l>step</l><l>1</l></block><block s="doSetVar"><l>tester</l><block s="reifyReporter"><autolambda><block s="reportGreaterThan"><block var="i"/><block var="end"/></block></autolambda><list></list></block></block></script></block><block s="doSetVar"><l>i</l><block var="start"/></block><block s="doUntil"><block s="evaluate"><block var="tester"/><list></list></block><script><block s="doRun"><block var="action"/><list></list></block><block s="doChangeVar"><l>i</l><block var="step"/></block></script></block></script></block-definition><block-definition s="join words %&apos;words&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%mult%txt"></input></inputs><script><block s="doWarp"><script><block s="doIf"><custom-block s="empty? %l"><block s="reportCDR"><block var="words"/></block></custom-block><script><block s="doReport"><block s="reportListItem"><l>1</l><block var="words"/></block></block></script></block><block s="doIf"><block s="reportEquals"><l></l><block s="reportListItem"><l>1</l><block var="words"/></block></block><script><block s="doReport"><custom-block s="join words %mult%txt"><block s="reportCDR"><block var="words"/></block></custom-block></block></script></block><block s="doIf"><block s="reportEquals"><l></l><block s="reportListItem"><l>2</l><block var="words"/></block></block><script><block s="doReport"><custom-block s="join words %mult%txt"><block s="reportCONS"><block s="reportListItem"><l>1</l><block var="words"/></block><block s="reportCDR"><block s="reportCDR"><block var="words"/></block></block></block></custom-block></block></script></block><block s="doReport"><block s="reportJoinWords"><list><block s="reportListItem"><l>1</l><block var="words"/></block><l> </l><custom-block s="join words %mult%txt"><block s="reportCDR"><block var="words"/></block></custom-block></list></block></block></script></block></script><scripts><script x="229.00000300000002" y="196.77778077777774"><block s="reportJoinWords"><list><l></l><l></l></list></block></script></scripts></block-definition><block-definition s="list $arrowRight sentence %&apos;data&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doReport"><custom-block s="join words %mult%txt"><block var="data"/></custom-block></block></script></block></script></block-definition><block-definition s="sentence $arrowRight list %&apos;text&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%txt"></input></inputs><script><block s="doWarp"><script><block s="doReport"><block s="reportTextSplit"><block var="text"/><l><option>whitespace</option></l></block></block></script></block></script></block-definition><block-definition s="catch %&apos;tag&apos; %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%upvar"></input><input type="%cs"></input></inputs><script><block s="doCallCC"><block s="reifyScript"><script><block s="doSetVar"><l>tag</l><block var="cont"/></block><block s="doRun"><block var="action"/><list></list></block></script><list><l>cont</l></list></block></block><custom-block s="ignore %s"><l>3</l></custom-block></script></block-definition><block-definition s="throw %&apos;cont&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s">catchtag</input></inputs><script><block s="doRun"><block var="cont"/><list></list></block></script></block-definition><block-definition s="catch %&apos;tag&apos; %&apos;value&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%upvar"></input><input type="%anyUE"></input></inputs><script><block s="doCallCC"><block s="reifyScript"><script><block s="doSetVar"><l>tag</l><block var="cont"/></block><block s="doReport"><block s="evaluate"><block var="value"/><list></list></block></block></script><list><l>cont</l></list></block></block></script></block-definition><block-definition s="throw %&apos;tag&apos; %&apos;value&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s">catchtag</input><input type="%s"></input></inputs><script><block s="doRun"><block var="tag"/><list><block var="value"/></list></block></script></block-definition><block-definition s="for each %&apos;item&apos; of %&apos;data&apos; %&apos;action&apos;" type="command" category="lists"><header></header><code></code><translations></translations><inputs><input type="%upvar"></input><input type="%l"></input><input type="%cs"></input></inputs><script><block s="doUntil"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doSetVar"><l>item</l><block s="reportListItem"><l>1</l><block var="data"/></block></block><block s="doRun"><block var="action"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><block s="doSetVar"><l>data</l><block s="reportCDR"><block var="data"/></block></block></script></block></script></block-definition><block-definition s="if %&apos;test&apos; do %&apos;action&apos; and pause all $pause-1-255-220-0" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%boolUE"></input><input type="%cs"></input></inputs><script><block s="doDeclareVariables"><list><l>breakpoint</l></list></block><block s="doIf"><block s="evaluate"><block var="test"/><list></list></block><script><block s="doSetVar"><l>breakpoint</l><block var="test"/></block><block s="doShowVar"><l>breakpoint</l></block><block s="doRun"><block var="action"/><list></list></block><block s="doPauseAll"></block><block s="doHideVar"><l></l></block></script></block></script></block-definition><block-definition s="word $arrowRight list %&apos;word&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%txt"></input></inputs><script><block s="doWarp"><script><block s="doReport"><block s="reportTextSplit"><block var="word"/><l><option>letter</option></l></block></block></script></block></script></block-definition><block-definition s="ignore %&apos;x&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs></block-definition><block-definition s="tell %&apos;sprite&apos; to %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s">Sprite</input><input type="%cs"></input></inputs><script><block s="doRun"><block s="reportAttributeOf"><block var="action"/><block var="sprite"/></block><list></list></block></script></block-definition><block-definition s="ask %&apos;sprite&apos; for %&apos;expression&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%s">Sprite</input><input type="%repRing"></input></inputs><script><block s="doReport"><block s="evaluate"><block s="reportAttributeOf"><block var="expression"/><block var="sprite"/></block><list></list></block></block></script></block-definition><block-definition s="list $arrowRight word %&apos;list&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doReport"><block s="reportJoinWords"><block var="list"/></block></block></script></block></script></block-definition><block-definition s="make ONE row" type="command" category="motion"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doRepeat"><l>3</l><script><block s="doChangeVar"><l>clone number</l><l>1</l></block><block s="createClone"><l><option>myself</option></l></block><block s="changeXPosition"><l>50</l></block></script></block></script></block-definition><block-definition s="delete ONE ROW" type="command" category="motion"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doRepeat"><l>2</l><script><block s="removeClone"></block></script></block></script></block-definition><block-definition s="make TIC TAC TOE board" type="command" category="motion"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doRepeat"><l>3</l><script><custom-block s="make ONE row"></custom-block><block s="changeXPosition"><l>-150</l></block><block s="changeYPosition"><l>-50</l></block></script></block><block s="gotoXY"><l>10000</l><l>11100000</l></block></script></block-definition><block-definition s="if xwins?" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs></inputs><script><custom-block s="for each %upvar of %l %cs"><l>triple</l><block var="winning triples"/><script><block s="doIf"><block s="reportAnd"><block s="reportEquals"><block s="reportListItem"><block s="reportListItem"><l>1</l><block var="triple"/></block><block var="board"/></block><l>x</l></block><block s="reportAnd"><block s="reportEquals"><block s="reportListItem"><block s="reportListItem"><l>2</l><block var="triple"/></block><block var="board"/></block><l>x</l></block><block s="reportEquals"><block s="reportListItem"><block s="reportListItem"><l>3</l><block var="triple"/></block><block var="board"/></block><l>x</l></block></block></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block></script></custom-block><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block-definition><block-definition s="%&apos;wins&apos; Wins?" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><custom-block s="for each %upvar of %l %cs"><l>triple</l><block var="winning triples"/><script><block s="doIf"><block s="reportAnd"><block s="reportEquals"><block s="reportListItem"><block s="reportListItem"><l>1</l><block var="triple"/></block><block var="board"/></block><l>O</l></block><block s="reportAnd"><block s="reportEquals"><block s="reportListItem"><block s="reportListItem"><l>2</l><block var="triple"/></block><block var="board"/></block><l>O</l></block><block s="reportEquals"><block s="reportListItem"><block s="reportListItem"><l>3</l><block var="triple"/></block><block var="board"/></block><l>O</l></block></block></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block></script></custom-block><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block-definition><block-definition s="draw?" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doIf"><block s="reportAnd"><block s="reportNot"><block s="reportListContainsItem"><block var="board"/><l>empty</l></block></block><block s="reportAnd"><block s="reportNot"><custom-block s="if xwins?"></custom-block></block><block s="reportNot"><custom-block s="%s Wins?"><l>o</l></custom-block></block></block></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block></script></block-definition><block-definition s="computer turn" type="command" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doDeclareVariables"><list><l>randon number</l></list></block><block s="doSetVar"><l>randon number</l><block s="reportRandom"><l>1</l><l>9</l></block></block><block s="doUntil"><block s="reportEquals"><l>Empty</l><block s="reportListItem"><block var="randon number"/><block var="board"/></block></block><script><block s="doSetVar"><l>randon number</l><block s="reportRandom"><l>1</l><l>9</l></block></block></script></block><block s="doChangeVar"><l>computer pick</l><block var="randon number"/></block></script></block-definition></blocks><variables><variable name="X&apos;S turn"><bool>true</bool></variable><variable name="board"><list struct="atomic" id="959">empty,empty,empty,empty,empty,empty,empty,empty,empty</list></variable><variable name="winning triples"><list id="960"><item><list struct="atomic" id="961">1,2,3</list></item><item><list struct="atomic" id="962">1,4,7</list></item><item><list struct="atomic" id="963">1,5,9</list></item><item><list struct="atomic" id="964">2,5,8</list></item><item><list struct="atomic" id="965">3,5,7</list></item><item><list struct="atomic" id="966">3,6,9</list></item><item><list struct="atomic" id="967">7,8,9</list></item><item><list struct="atomic" id="968">4,5,6</list></item></list></variable><variable name="computer pick"><l>0</l></variable></variables></project><media name="U3L1-Tic-Tac-Toe Setup" app="Snap! 6, https://snap.berkeley.edu" version="1"></media></snapdata>