<snapdata remixID="10985368"><project name="U3L3-Tic-Tac-Toe" app="Snap! 6, https://snap.berkeley.edu" version="1"><notes>11-8-21: Ideas for future improvement&#xD;&#xD;1. Computer should detect who wins.&#xD;2. User Interface - manage the game like congratulations and next moves.&#xD;3. Costumes/Backgrounds&#xD;4. Scoreboard&#xD;5. Computer player&#xD;&#xD;11-17-21: Fixed bug related to playing squares that have already been played.&#xD;&#xD;11-19-21: Game now detects wins and ties, and it stops the game when this occurs.&#xD;We need to look for repetitive code to find oppurtunities for abstraction.</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="-50" y="-100" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="false" hidden="true" costume="1" 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,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAAAAXNSR0IArs4c6QAAAMdJREFUaEPtmsENglAQBZcm8EhiJdYi/qaM1sIVYjjYkYmJBbzLBH+G++SxMxwZqrNnqKpLVS093DVN5/170HVuy/Nx/+ub1u1V7dbeHnTUjBY6apnfe1nIQrABPzlYeDxnoVgZDFgIFh7PWShWBgMWgoXHcxaKlcGAhWDh8ZyFYmUwYCFYeDxnoVgZDFgIFh7PWShWBgMWgoXHcxaKlcGAhWDh8ZyFYmUwYCFYeDxnoVgZDFgIFh7PWShWBgN9F+rlj8ZxPG0fpgqdIlzL6G8AAAAASUVORK5CYII=" id="10"/></item><item><costume name="X" center-x="26" center-y="26" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAAAAXNSR0IArs4c6QAAAgVJREFUaEPt2jtPwlAUB/DDpB0QZ6KGkS9AYHQiBtCEqAgKBCOy+hwcTRmN8VuYMDk6qpvG4ORj9ZWoIy4sDqYkNaIg5957Tm+LsDXp4/7uv73hn9YHAKFkMr3j9w8Ng8d/zebHtQ8AJiOR6HGxtOxp0NvrC1zV6w8tUCaTO6rVDke9HND5xSVUTXMAcm2I/zOhx6dnmBgfc1Uq3caESmilXIFgMAhVc9cVqJvbO5hOpWBv/wBm0zNtY0KBGo13KK9WIBwOa0fZmKV8oeNYUCBrCtyA6oWxxokG6UZhMMIgXSgsRgrkNEoEIw1yCiWKUQJxo2QwyiAulCyGBESNUsGQgahQqhhSkCqKAkMOkkVRYVhAoihKDBsIi6LGsIJ6oTgw7KBuKC6MI6CfqGx2oVXOuvWZtrYmsSFUHyTO/3WI1afyhSKcnZ7A2voGW1F0DGTdZslEAgzDgLn5jLdB35+Z7a1N1jrPnlCnBYCzzrOC/lrNuFBsIMzSzIFiAWEw9vJHjSIHiWA4UKQgGQw1igykgqFEkYAoMFQoZRAlhgKlBOLAqKKkQZwYFZQUyAmMLEoY5CRGBiUE0oERRaFBOjEiKBTIDRgsCgWKx6cgGouxtUzRam//oc3mFuVeGrvxtb6FCgRGfs0FKiHRGdS5/wCkc/Yx1+7vhPrtA8AQAJQwsXpgn/tPUFR7qLbGkSAAAAAASUVORK5CYII=" id="11"/></item><item><costume name="O" center-x="26" center-y="26" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAAAAXNSR0IArs4c6QAABF9JREFUaEPtmktME1EUhv+uFXClCwQCCtTHwhaNbhRFQ4zgK2oUfMQoBSUuJETjhlLKxiAVF8YHxcSoQPERH2BiiILoQhRpNRFESSSCzx0PXWPOmJu0dKZzZ+ZOQWSSpovee+Z85z9z7r1nasE0uywA1gJonw5cSUkp3RLQocOO9it1tf80U+fLLjgKHG9ngKaqjDMK8SrT+rgNfn8A/R8/oL3tCQYGPoVN3blrN+Lj47HMZkfWukwkJsznNa84TqhCg0Nf4PXWof7GdWQsXyF97HYbrOlpss7Szfs+fMSbgB8P7t+Txu/Jy8eO7Vt0gwkBCgYpPFKM/LzduqJ95+4D+BobMDI8jKKjxbrADANdvVYPt8sJAjla5EBcXKzu6LKJlK7VVVVISExEeblTU3B0A42MjKLcVYHenh64KyuxauUKwyDBBsj+xcte1F66gEu1XmRvyOKyrwuIblbgKERsbCzOeqqFqKLkLaXhidISnPHUcKWgZiAGY7VaUel2cUXN6KCe3vfYnJvLBaUZ6HBBIWJiYnCuxmPUT03zCWrpksV40fkqYnprAjp/4TI6nrajzltrapqppV8gEFC8PzcQi9C7nl4sWbxIU3RFDj5eUiqZU8oQbiBKNZs9A8eKi0T6p9kWPcM2mw0NjT7Z1OMCokH5eXsQSWrNnhmYQKkf8HdD7qjDBUQyL0xNm3R1WAyYSs0tLWHprwpE25qkxAQMD49MSiFQEvJ0lQe/f42FLR2qQLS1oc1jtMu0WkZSkSo5XoLW1kchQ1WBKN1Wr8nkWqXVnBD9e0rKAkxMO1UguUmiHdNrTy7YqkAWiwXj4+N672nqPKp2dAUvJRGB6EePx4NbN32mOqbXOB0zmny+kPKtCuT1emXrvV4nRM4j5yf6NwMkMsJGbWlWSKnWG3VE1Hw6/D1/1hGyRv5fVY4imZ290ZSegQiV6ASwKSc3ZNFXVajM6cKChak4eGCvCB+E2qBF/2lHR0hXSBWI9cqm2lrEWl2a93K0VZ8zJw6fB4c09ceESiFjjDJn1uwYnDr59wTLLlWFaKDSZLOdVrIfKchcQHQmWpuZOaVOrD9/fJdto3EBMZXoO1q9OCV12IFT6RHgBmIqKTUnopV+VKpT09LDnh1NzxAbzNqyk9UsoWN39+uuiH1BboUYFBWIvr6+qDcbWTDlGiOaq9zEdIo2FC8M+alZoYlKuVzlpnZS6VR6troqrHeg9MzqBiKDlNP0/sbpcgvfGlERqqhwY2hwEDXnariDZgiISewsK5PetjkcDsMvvmjRvF7fKKmi562gYSCCCnZiXdb6sB0wT0knRRoamyTFyYbe4AgBYg4T2N37zXjY0iyV1y1bt0kt5OUZdmnIImu61H2lg+PY2C98/fYd/f390lj67N23Hzk5OYZUFgoUrARFvOu1X3KY/qswOjqK27eapCHJySmSCvTijAGLekdrGhBPmpkxZgbIjKiKtDm9FZou/2icO3feyz8NoolAOmg4eQAAAABJRU5ErkJggg==" id="12"/></item></list></costumes><sounds><list id="13"><item><sound name="Finger Snap" sound="data:audio/ogg;base64,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" id="14"/></item></list></sounds><blocks></blocks><variables><variable name="position number"><l>10</l></variable></variables><scripts><script x="30" y="20"><block s="receiveGo"></block><block s="show"></block><custom-block s="Initialize Game"></custom-block><block s="hide"></block></script><script x="30" y="126.49999999999997"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="playSound"><l>Finger Snap</l></block><block s="doIfElse"><block var="game over"/><script><block s="doSayFor"><l>Click the green flag to play again!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block s="getCostumeIdx"></block><l>1</l></block><script><custom-block s="Player Move"></custom-block></script><script><block s="doSayFor"><l>Invalid move, pick another square.</l><l>1</l></block></script></block></script></block><custom-block s="Check for Win or Tie"></custom-block></script></scripts></sprite><sprite name="Procedures" idx="2" x="-50" y="50" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="0" color="244.79999999999998,0,88.12800000000007,1" pen="tip" id="50"><costumes><list struct="atomic" id="51"></list></costumes><sounds><list struct="atomic" id="52"></list></sounds><blocks></blocks><variables></variables><scripts><script x="20" y="20"><block s="receiveGo"></block><block s="hide"></block></script><script x="20" y="90.83333333333326"><custom-block s="makeBoard"><comment w="102" collapsed="false">Creates a TTT board using square clones.</comment></custom-block></script><script x="20" y="159.8333333333333"><custom-block s="possible winning triples"><comment w="112" collapsed="false">Reports a list of the 8 triples that win at TTT.</comment></custom-block></script><script x="20" y="228.8333333333333"><custom-block s="status of triple %l"><l/><comment w="156" collapsed="false">Input parameter is a triple as a list, reports back the status of triple.</comment></custom-block></script><script x="20" y="297.83333333333326"><custom-block s="status of all winning triples"></custom-block></script><script x="20" y="327.66666666666663"><custom-block s="won, player? %txt"><l>x</l></custom-block></script><script x="20" y="360.66666666666663"><custom-block s="tie game?"></custom-block></script><script x="20" y="390.4999999999999"><custom-block s="Initialize Game"><comment w="125" collapsed="false">Set all gloabl variables and create the TTT board.</comment></custom-block></script><script x="20" y="459.4999999999999"><custom-block s="Player Move"></custom-block></script><script x="20" y="495.33333333333337"><custom-block s="Check for Win or Tie"></custom-block></script></scripts></sprite><watcher var="X&apos;s turn?" style="normal" x="5.645833333333371" y="5.645833333333336" color="243,118,29" hidden="true"/><watcher scope="Square" var="position number" style="normal" x="156.29166666666652" y="13.641668924999976" color="243,118,29" hidden="true"/><watcher var="game over" style="normal" x="10" y="10" color="243,118,29"/><watcher var="board" style="normal" x="11.291666666666629" y="41.29166666666666" color="243,118,29" extX="79.99999999999989" extY="70"/></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><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"><block s="errorObsolete"></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="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="makeBoard" type="command" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doSwitchToCostume"><l>Empty</l></block><block s="gotoXY"><l>-50</l><l>50</l></block><block s="doSetVar"><l>position number</l><l>1</l></block><block s="doRepeat"><l>3</l><script><block s="doRepeat"><l>3</l><script><block s="createClone"><l><option>myself</option></l></block><block s="forward"><l>50</l></block><block s="doChangeVar"><l>position number</l><l>1</l></block></script></block><block s="setXPosition"><l>-50</l></block><block s="changeYPosition"><l>-50</l></block></script></block></script></block-definition><block-definition s="possible winning triples" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportNewList"><list><l>1</l><l>2</l><l>3</l></list></block><block s="reportNewList"><list><l>4</l><l>5</l><l>6</l></list></block><block s="reportNewList"><list><l>7</l><l>8</l><l>9</l></list></block><block s="reportNewList"><list><l>1</l><l>4</l><l>7</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>6</l><l>9</l></list></block><block s="reportNewList"><list><l>1</l><l>5</l><l>9</l></list></block><block s="reportNewList"><list><l>3</l><l>5</l><l>7</l></list></block></list></block></block></script></block-definition><block-definition s="status of triple %&apos;triple&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportListItem"><l></l><block var="board"/></block></autolambda><list></list></block><block var="triple"/></block></block></script></block-definition><block-definition s="status of all winning triples" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="reportMap"><block s="reifyReporter"><autolambda><custom-block s="status of triple %l"><l/></custom-block></autolambda><list></list></block><custom-block s="possible winning triples"></custom-block></block></block></script></block-definition><block-definition s="won, player? %&apos;player&apos;" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%txt"></input></inputs><script><block s="doForEach"><l>triple</l><custom-block s="status of all winning triples"></custom-block><script><block s="doIf"><block s="reportEquals"><block var="triple"/><block s="reportNewList"><list><block var="player"/><block var="player"/><block var="player"/></list></block></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block></script></block><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block-definition><block-definition s="tie game?" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doForEach"><l>square</l><block var="board"/><script><block s="doIf"><block s="reportIsA"><block var="square"/><l><option>number</option></l></block><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block></script></block><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block-definition><block-definition s="Initialize Game" type="command" category="variables"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doSetVar"><l>position number</l><l>0</l></block><custom-block s="makeBoard"></custom-block><block s="doSetVar"><l>board</l><block s="reportNewList"><list><l>1</l><l>2</l><l>3</l><l>4</l><l>5</l><l>6</l><l>7</l><l>8</l><l>9</l></list></block></block><block s="doSetVar"><l>X&apos;s turn?</l><block s="reportBoolean"><l><bool>true</bool></l><comment w="90" collapsed="true">X plays first.</comment></block></block><block s="doSetVar"><l>game over</l><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block-definition><block-definition s="Player Move" type="command" category="lists"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doIfElse"><block var="X&apos;s turn?"/><script><block s="doSwitchToCostume"><l>X</l></block><block s="doReplaceInList"><block var="position 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="position 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></script></block></script></block-definition><block-definition s="Check for Win or Tie" type="command" category="sensing"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doIf"><custom-block s="won, player? %txt"><l>x</l></custom-block><script><block s="doSetVar"><l>game over</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><block s="doSayFor"><l>Congrats, X wins!</l><l>2</l></block></script></block><block s="doIf"><custom-block s="won, player? %txt"><l>o</l></custom-block><script><block s="doSetVar"><l>game over</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><block s="doSayFor"><l>Congrats, O wins!</l><l>2</l></block></script></block><block s="doIf"><custom-block s="tie game?"></custom-block><script><block s="doSetVar"><l>game over</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><block s="doSayFor"><l>Tie Game!</l><l>2</l></block></script></block></script></block-definition></blocks><variables><variable name="X&apos;s turn?"><bool>false</bool></variable><variable name="board"><list struct="atomic" id="431">X,O,X,O,X,O,X,8,9</list></variable><variable name="game over"><bool>true</bool></variable></variables></project><media name="U3L3-Tic-Tac-Toe" app="Snap! 6, https://snap.berkeley.edu" version="1"></media></snapdata>