<snapdata remixID="11288142"><project name="u3l3 page 1-3 Tic Tac Toe" app="Snap! 7, https://snap.berkeley.edu" version="2"><notes></notes><thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAAAAXNSR0IArs4c6QAAET1JREFUeF7tnQdYVUcWgM+jSe+aCC5gEl0bURHiakQUjb33BnaxAJY1Yo0lmmASNcasiolxo1gxlkSzamIUxV6wV1SkCYIoSK/7nWHvfW94vILLw3ncme/LF5/OvXPK/5255865M7LS0tJS4I1b4C1ZQMYBfEuW58MSC1AAlpSUwNGjR8HFxQWsrKyq3USpqakgk8nAw8Oj2sfmA74dC1AAHjlyBJo0aUIkuXfvHjRq1EilVDExMfDBBx/oROqsrCxRDp0MwG/KjAUoAG/fvg2WlpZEuJCQEGjQoAHEx8dD8+bNAaEwMzOD8+fPg7u7Ozx48ABWr14NeXl5Va4Mwt2pU6cqvy+/IXsWoAB8+vSpKOHcuXPh/fffh5SUFGjRogVcvnwZ6tatCx9++CHcunULEJK1a9fqBMD79+9Dly5d2LMWl6jKLUABGBsbW+UDvMkNEcCuXbu+yaX8Gj2zAAXgkydPRPET7l6FvNhokFVWoUpfAJCTVwAtBwVBUVERGQ0B7NatW2VH5v310AIqAbw5tzX41LeA0w2DoPHH3cDYzJJkqFX52vDRrWhwObMC3ilKhoKQa5CRkcEB1EOI/h+RKQAfP34s3it+SVvI6jAH3DsPIn9nZGQEmwd5QkPDLI3j2Tm5QLM1x+DRo0dgbGwMhYWF4OrqWuF1mS9SwHn3UJDNvQrp6ekigN27d9c4Du+g/xZQC6Dz/OMQdf4SdO7cmQCYMq4xmBnJ51jrTiOgOOslZF/4j5IlbH+8B8nJyWBhYUHAqlOnjkprxW8JhmYzfuYA6j9PldaAAhAjltASln4MrsvOkywX4SnIz4eUCU3AzFAOoIVXV7DtNRESF5dFScVWHsDatWurFO7RtnnQKmgDvHjxQoyAPXr0qLQy/AL9s4BGAHNycsDJyQlyc3PheTkA39t8HQoSYiBp5VgoycmktLf54S55hYNTL74zVAvg1nngEbSeioAcQP2D6U0kpgDEd3tCS1zWDlyWnhN/mxgbQ1qAOxUB1Q2IAOIUjC+vMblwdHRU2f3xNgSQjoA9e/Z8E334NXpmAQrAhw8fiuInfe5NAMSsF7NfbA72dlCgxcpHbl4eFJWUihmzcL1wc8V74p+fhM8nAKalpYlTcK9evfTMlFzcN7EABSBOlUJ7trw9/G3JWfG3qakpXBnRGN6zNNA4DgJnt+k2YHGBkIQ4ODiojoAIYOB6CsDevXtrHId30H8LqAWw3uIzUFxcTJbhfHx8IG1SM2oKdl0bCSUFeRD/qfKqhfWmO/D8+XMRQHt7e5XWqigCcgD1Hy5tNKAAxBUIoSWv8AHnz6Lg0KFDMGbMGMjOzoK0SfJnQEMrezD38AWZgSHk3r0IhcnyVRS8h1XYbZKEnD17Fry8vMDOzk41gNsXkCwYIyY2lKNPnz7ayM/76LkFNAKIkcvAwACys7KUkhCHYXOgtKgA0vd+q2QGy423yJQqTMFqAQxfQLJgxWdADqCek6Wl+BSAWAMotJQvOoDTotPib3yuK1nlB5Aoj5KqxjBydAbDxYfg2bNn5AV2QUGB2tcwsdsRQDoC9u3bV0sVeDd9toBGAIW1X0NDQ3gQdQyKUuI06mtqYwduvv3FtV2E19raWmkdWVhbjt2xUGkK5gBqNHON6EABePfuXVGp5192hHcXRAJWSXfs2BFwKk6a4A62JtqVu5Sfgm1sbJReywhwP0UAgzeSpEV4BuzXr1+NMDBXQr0FKADv3Lkj9k4N9SUAYiU0FhM4OztB+uTmVBbsMPRTMHNvBwkLladL8/U3yMqG8AyIEVBVEwDEpEUAsH///tx3ErCAUkm+oHPayk7wzvyTEB4eDm3atCFl+C+n0ABafdwXHIaHQGxgWyVTIYCYVBw7doxEUHUfOT3dsQhaBW8gWbMA4IABAyRgfq6iRgAFE1mYm0N6OQDVma98BFQPYNkUzAGUHpAUgPith9BefNUZ6sw7QVnEMf4qlD65rtlK79SH9EYd4dWrV6SvkISonIJ3LiJJiCKAAwcO1DwO76H3FlALYO25f4kK1qpVC3b4eWtdkFp/+X5SjIAFqfgaRl0xQtzOz5SmYA6g3rOllQIUgDdv3hQvSv/6E3AMOU4yU1wHxi/iMqa21Log1fT7ayQCCkmIubm5SoHidn0GnsEbCbDCM+CgQco1hlppxDvplQU0AhgaGgqYkXp4tISMaR5aF6TWWhdN3gNyAPWKh2oXlgLwxo0bogAvv+kCDnP+JL/xHV5xURFkBNIAqitIFQAUClKxLlBVi9+1mEzBihFw8ODB1W4MPmD1W4AC8Pp1eYLxalVXsP/0D1EiBCh7upfWBakm310lERCvw6lYHYAJuxHAjWTpTpiChwwZUv3W4CNWuwUoAK9duyYKkLG6G9jNPib+xky2nrMTFBcWahQyOzsbMrKyNfYTOiTsXgKe0zdCUlKSCODQoUO1vp531F8LaA2gpYUF3B7voXVBqunay2QVRXgGxCxaVasoAnIA9ReqykhOARgdHS1em7mmO9j+8yisW7cOFi5cCCXFxfA62FPrglTjtVfg9evXIoAmJiaqAdyzhGTBihFw2LBhldGD99VTC2gEEGsBr1y5At7e3pClAKCmglQEEJ8BhYJUAUChAEH4TgR/J+5ZqjQFcwD1lKhKik0BePXqVfHy19/2AJtZR0gGjPDgZ5nlkxB1BalG39JTML6QVtUS9ywhSYhiBBw+fHglVeHd9dECagG0ninf8QAjodmGAIAk+YdLqhQ2dHSG/Nm7SQRE8PLz80Hdi+ikiKUcQH2kpwpkpgDEqVZoWWt7gtWM38XfWJCaFH0Wip9rLkg1sbaD2q0/AcyGcarF/3A1RVVLilhGpuDExEQxCx4xYkQVqMdvwboFKADx6zehZX/XiwAYGRkJnp6eZCkuPdBL64JUxSQEt9zA0nyVU3DEUvCaHgYJCQkigCNHjmTddly+KrAABeClS5fEW+as6w2W0w9DREQE2S7Xzc0Vcma0prPg705B5skIeLlvnZIoBqsvAm7rga9hEECMoCoj4N5lJAtWBHDUqFFVoB6/BesWUAugRfAhOHz4MNmWt2nTppA7kwbQZc0JkBkawdNg7woBxPeAWJDaoUMH8mWdqvZs7+dkCuYAso5L1ctHAXjx4kVxhNzv+4B50G/kNz7D2dhYK0VAdeIYrrlEngGFCIgAKm5uqbjZZfIvCGAY2RAdG34X7OfnV/Xa8jsyZwEKwAsXLojAKQKIf4nwuKbfB1msvGBBlTbFtV0hya0NWQkRAFa3FowR0GtGGMTFlSU4uEUIB5A5VnQiUIUA4kh5/+oLZoG/ioMiQAcCukJDA807pNo6u8C787dDZmam+F2wOgArioD+/v46UZjflC0LUADiGSBCy1/fD0ynHYQtW7ZAs2bN4JPOnSFvVhu6INV3eNkOqRePKGv1TdnmlsIUrG5v6eR9y0kWrBgBOYBsgaIraTQCiN8K+/r6Qk52NuTPbltBQeokSFys/P1G6dfnyAtorQD8ZTk1BeMz4OjRo3WlM78vQxagADx3Tr4hZcGG/lBr6gFSko9b9OKSXEE5AOtvvg6FKnZILfnqLPkWBAtSESg8h05VKx8BsT9uiMRbzbcABSAWDgitcOMAMJmyX/yNR3iVzG2vdUEqAogRUChIxW3eVLWUfStIBBROasIkhANY8+EjCarica3lATSevE+0Ar42aYCHE5ZUBBK9XUdmZgYkp5btdqpNe74fAdwkAogRcOzYsdpcyvvouQUoAM+cOSOqUxQ2EBQBtLW1hUdT22hdkAoro8jJR8IzoHAKUkX2SkEAp8sjIAI4btw4PTctF18bC1AARkVFiftBI4BGAb+QZ0B8fsOjW4vmtKOX4tZFQWlhAcTN8lUaq3jlGbKnjAAg/llVe37gCwIgnlWHkZYDqI3rakYfJQAFtYo3DQLDSXvJOi4+m3Xy9YWiEG8KQGvfYWDlPQASlyp/QFQUGkWSEExsWrVqRf6sqqUigDM2EQCxIYDjx4+vGRbmWqi1AAXg6dPyDSlLfhgMBhMjyI4GmEjgqkZxOQAd/T+DvJhoyL11Foozyw6ZERoCqDgFY0KiEsCDX8JHMzaBcFgiJiEcQGmQqxFAwQxYzeKwdRbItCxIfTl1C4l6WJCq6VDr1ANfkixYMQJOmDBBGh6QuJYUgKdOnRLNUfrjEJBN2CP+xnq+Vw+uQ4kWBanGVjZg4d5OnHbxuU5dOVbaQQRQHgFxCp44caLEXSMN9SkAsfhUbJuHEgAxM8aCVKe6dSF7trfWBanlp2B1UTD1f1OwcFonTsEcQA4gwPjdpI4PP1jv4OMDJfN8xCREZlwLHP0XgczEFNJ+XqZ0VlzBF6dI9ixkwfhRk6qWdjAUPpq5CQQAMQJOmjRJGh6QuJZUBDx58qRoDtlPw6B03C5SUIrHZuGH6aXzO4gAGpiag93A6SAzMoGX+79XSkLyV0SSQ26EglSsjlYJ4K+hJAlRBDAgIEDirpGG+hoBFMzgYG9PRUBN5ikfAdUCWEEE5ABqsnDN+HcKwBMn5DuiGmwZDiVjd1Ja/j33KRjF3daoeaHD3yCmTnOtk5AXv4aSJEQxAk6ePFnjOLyD/lugUgDqSt20CqZgDqCurM3WfSkA//pLviWv4b9HQPGYHdUi7YvfVpJnQOHEdkxCpkyZUi1j80HergXUAlg0ertOpMOqG+FgwrZt24Lh+Z/go5k/iADikWFTp07Vydj8pmxZgALw+PHjonRGP4+EQv9wnUmLOx+0b98ecKpNP/SVUgTkAOrM9EzdmALwzz/LtuTFZrx1FAEQ3wHiS+QmTZqQ896qsuGmR7jO/CR8AXkPGBMTQ26PU/C0adOqcih+L0YtoBbAAr9t5JxfLCTAZTpcEREaVslUdAo6rmLgK5cWLVqIfXF3he7duwNWVQsNN6zEzYuwTKsocgOZgjmAjFKiQ7EoAP/4Q74ntPE2PygYtRXw8BqEr0ePHuDm5iaKgvs+44fkCBWepo7LeHgaEq5+4PMdRkssw8J6Qrwer3VxcSHXI3z4ySauEeP3Jjk7g8Ft+i54+PChGAEDAwN1qDa/NSsWoADEVQsxQoX7Q0zrEHCs9x7ZnHLVqlXkmU1oCE5YWBgBE/+MO9zjujGeKYcbGeE5cViOhf+GU3twcDDgYYgIH+6cKjSMrk3PLQHTwN8oAIOCglixEZdDhxagANy3b584TdYK9wdrx3chulEAPI5LJBBqao0bNwbFI18r6o9f1+EeMPXq1SMR1O7lHfjHo82QOjlSBBALYHkxgiZr14x/pwDE/aAbNmxINDPfOwVa2hdBfqkRnMhzhexS1Xs8v6kpPE2SwNUog1we6/e7uD8gln7hjly81XwLUADilInTqpOTE9SvX58cUl0dDautcVcE/D9W3/CjWqvD6myMQQHIhkhcCilZgAMoJW8zqCsHkEGnSEkkDqCUvM2grhxABp0iJZE4gFLyNoO6cgAZdIqUROIASsnbDOrKAWTQKVISiQMoJW8zqCsHkEGnSEkkDqCUvM2grhxABp0iJZE4gFLyNoO6cgAZdIqUROIASsnbDOrKAWTQKVISiQMoJW8zqCsHkEGnSEkkDqCUvM2grhxABp0iJZE4gFLyNoO6cgAZdIqUROIASsnbDOrKAWTQKVISiQMoJW8zqCsHkEGnSEkkDqCUvM2grhxABp0iJZE4gFLyNoO6cgAZdIqUROIASsnbDOrKAWTQKVISiQMoJW8zqCsHkEGnSEkkDqCUvM2grhxABp0iJZE4gFLyNoO6cgAZdIqUROIASsnbDOrKAWTQKVISiQMoJW8zqCsHkEGnSEkkDqCUvM2grhxABp0iJZE4gFLyNoO6cgAZdIqUROIASsnbDOrKAWTQKVIS6b89VIcgzGTqJAAAAABJRU5ErkJggg==</thumbnail><scenes select="1"><scene name="u3l3 page 1-3 Tic Tac Toe"><notes></notes><hidden></hidden><headers></headers><code></code><blocks><block-definition s="makeBoard" type="command" category="control"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doSetVar"><l>position number</l><l>0</l></block><block s="show"></block><block s="doFor"><l>row</l><l>1</l><l>3</l><script><block s="doFor"><l>column</l><l>1</l><l>3</l><script><block s="doChangeVar"><l>position number</l><l>1</l></block><block s="createClone"><l><option>myself</option></l></block><block s="changeXPosition"><l>50</l></block></script></block><block s="changeXPosition"><l>-150</l></block><block s="changeYPosition"><l>-50</l></block></script></block><block s="hide"></block></script></block-definition><block-definition s="won? %&apos;letter&apos;" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doDeclareVariables"><list><l>opposite letter</l><l>blank CHECK</l><l>blank FINAL</l></list></block><block s="doIfElse"><block s="reportEquals"><block var="letter"/><l>X</l></block><script><block s="doSetVar"><l>opposite letter</l><l>O</l></block></script><script><block s="doSetVar"><l>opposite letter</l><l>X</l></block></script></block><block s="doForEach"><l>item</l><custom-block s="status of all winning triples"></custom-block><script><block s="doSetVar"><l>blank CHECK</l><block s="reportBoolean"><l><bool>false</bool></l></block></block><block s="doSetVar"><l>blank FINAL</l><block s="reportBoolean"><l><bool>false</bool></l></block></block><block s="doFor"><l>i</l><l>1</l><l>9</l><script><block s="doSetVar"><l>blank CHECK</l><block s="reportListContainsItem"><block var="item"/><block var="i"/></block></block><block s="doIf"><block s="reportEquals"><block var="blank CHECK"/><block s="reportBoolean"><l><bool>true</bool></l></block></block><script><block s="doSetVar"><l>blank FINAL</l><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block></script></block><block s="doIf"><block s="reportAnd"><block s="reportListContainsItem"><block var="item"/><block var="letter"/></block><block s="reportAnd"><block s="reportNot"><block s="reportListContainsItem"><block var="item"/><block var="opposite letter"/></block></block><block s="reportNot"><block var="blank FINAL"/></block></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="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="ask for name" type="command" category="control"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doSetVar"><l>player names</l><l>0</l></block><block s="doAsk"><l>what&apos;s your name?</l></block><block s="doSetVar"><l>player names</l><block s="getLastAnswer"></block></block></script></block-definition><block-definition s="status of triple %&apos;winning triple&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportAnd"><block s="reportEquals"><block s="reportListItem"><l>1</l><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportListItem"><l></l><block var="board"/></block></autolambda><list></list></block><block var="winning triple"/></block></block><block s="reportListItem"><l>2</l><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportListItem"><l></l><block var="board"/></block></autolambda><list></list></block><block var="winning triple"/></block></block></block><block s="reportEquals"><block s="reportListItem"><l>2</l><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportListItem"><l></l><block var="board"/></block></autolambda><list></list></block><block var="winning triple"/></block></block><block s="reportListItem"><l>3</l><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportListItem"><l></l><block var="board"/></block></autolambda><list></list></block><block var="winning triple"/></block></block></block></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="doDeclareVariables"><list><l>massive list</l></list></block><block s="doSetVar"><l>massive list</l><block s="reportNewList"><list></list></block></block><block s="doForEach"><l>item</l><custom-block s="possible winning triples"></custom-block><script><block s="doAddToList"><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportListItem"><l></l><block var="board"/></block></autolambda><list></list></block><block var="item"/></block><block var="massive list"/></block></script></block><block s="doReport"><block var="massive list"/></block></script></block-definition></blocks><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" id="305"><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="306"></list></costumes><sounds><list struct="atomic" id="307"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites select="1"><sprite name="Square" idx="1" x="0" y="0" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="1" color="80,80,80,1" pen="tip" id="312"><costumes><list id="313"><item><ref mediaID="Square_cst_empty"></ref></item><item><ref mediaID="Square_cst_X"></ref></item><item><ref mediaID="Square_cst_O"></ref></item></list></costumes><sounds><list struct="atomic" id="314"></list></sounds><blocks></blocks><variables><variable name="position number"><l>9</l></variable></variables><scripts><script x="13" y="10"><block s="receiveGo"></block><block s="doSetVar"><l>turns</l><l>0</l></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="doWait"><l>1</l></block><block s="show"></block><block s="doSwitchToCostume"><l>empty</l></block><custom-block s="makeBoard"></custom-block><block s="hide"></block><block s="gotoXY"><l>0</l><l>0</l></block><block s="doSetVar"><l>X&apos;s turn?</l><block s="reportBoolean"><l><bool>true</bool></l></block></block></script><script x="361.9999999999992" y="26.99999999999966"><block s="receiveGo"></block><block s="removeClone"></block></script><script x="10" y="261.99999999999886"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="doSetVar"><l>turns</l><block s="reportSum"><block var="turns"/><l>1</l></block></block><block s="doIf"><block s="reportEquals"><block s="getCostumeIdx"></block><l>1</l></block><script><block s="doIfElse"><block var="X&apos;s turn?"/><script><block s="doSwitchToCostume"><l>X</l></block><block s="doSetVar"><l>X&apos;s turn?</l><block s="reportBoolean"><l><bool>false</bool></l></block></block><block s="doReplaceInList"><block var="position number"/><block var="board"/><l>X</l></block><block s="doIf"><custom-block s="won? %s"><l>X</l></custom-block><script><block s="doTellTo"><l>Sprite</l><block s="reifyScript"><script><block s="doSayFor"><l>Player X won!</l><l>2</l></block></script><list></list></block><list></list></block><block s="doSayFor"><l>Click on the flag if you want to play again</l><l>5</l></block><block s="doStopThis"><l><option>all</option></l></block></script></block></script><script><block s="doSwitchToCostume"><l>O</l></block><block s="doSetVar"><l>X&apos;s turn?</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><block s="doReplaceInList"><block var="position number"/><block var="board"/><l>O</l></block><block s="doIf"><custom-block s="won? %s"><l>O</l></custom-block><script><block s="doTellTo"><l>Sprite</l><block s="reifyScript"><script><block s="doSayFor"><l>Player O won!</l><l>2</l></block></script><list></list></block><list></list></block><block s="doSayFor"><l>Click on the flag if you want to play again</l><l>5</l></block><block s="doStopThis"><l><option>all</option></l></block></script></block></script></block></script></block><block s="doIf"><block s="reportEquals"><block var="turns"/><l>9</l></block><script><block s="doTellTo"><l>Sprite</l><block s="reifyScript"><script><block s="doSayFor"><l>The game ends in a tie :(</l><l>2</l></block></script><list></list></block><list></list></block><block s="doSayFor"><l>Click on the flag if you want to play again</l><l>5</l></block><block s="doStopThis"><l><option>all</option></l></block></script></block></script></scripts></sprite><sprite name="Sprite" idx="2" x="-9999.463080108351" y="-0.6554989075018227" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="0" color="219.29999999999998,0,171.05400000000003,1" pen="tip" id="471"><costumes><list struct="atomic" id="472"></list></costumes><sounds><list struct="atomic" id="473"></list></sounds><blocks></blocks><variables></variables><scripts><script x="146" y="169"><block s="gotoXY"><l>-10000</l><l>0</l></block></script></scripts></sprite><watcher scope="Square" var="position number" style="normal" x="4.767361111111313" y="316.5527834986115" color="243,118,29" hidden="true"/><watcher var="X&apos;s turn?" style="normal" x="1.5347222222219443" y="317.5576407958333" color="243,118,29" hidden="true"/><watcher var="turns" style="normal" x="110" y="32" color="243,118,29" hidden="true"/><watcher var="board" style="normal" x="8.534722222221944" y="5.580559369444472" color="243,118,29" extX="80" extY="185"/></sprites></stage><variables><variable name="X&apos;s turn?"><bool>false</bool></variable><variable name="board"><list struct="atomic" id="485">X,O,3,X,O,6,X,X,O</list></variable><variable name="turns"><l>14</l></variable></variables></scene></scenes></project><media name="u3l3 page 1-3 Tic Tac Toe" app="Snap! 7, https://snap.berkeley.edu" version="2"><costume name="empty" center-x="29.5" center-y="26.875" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADsAAAA0CAYAAAA0c0BmAAAAAXNSR0IArs4c6QAAAPlJREFUaEPtmrENg0AMRT9VUqakCw0dQ9wGVPTZAySCBNNQscENQUdzJSOkjEBpiMIAvjxP4G+/JzdOJD0lXSTdJF0Vb72ST9i7JCcpizerwl+HVVVVYRiGLM9z81teliXUdR3GcdyzHDbrnMvatpVzG9FxlPdeXdfJe3/EmLDGF8xmt9MDxmBsZwI4i7N2aD3tFIzBGIxtTQBncdYWsT+7BWMwBmNbE8BZnLVFLKcHZ3EWZ21NAGdx1hax3FmcxVmctTUBnMVZW8RyZ3EWZ2N2dvs3Lsty7fs+LYoitZ51nue1aZp1mqYtC//G1hd61v/+lfqINd13rjcRmgLYZsQIowAAAABJRU5ErkJggg==" mediaID="Square_cst_empty"/><costume name="X" center-x="30.5" center-y="26.875" image="data:image/png;base64,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" mediaID="Square_cst_X"/><costume name="O" center-x="30" center-y="26.875" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADsAAAA0CAYAAAA0c0BmAAAAAXNSR0IArs4c6QAABUpJREFUaEPtWkdIq0sUPvoe+CxoRGPHEq8VhIuCvSzVhQU0G9HYsGDfCYIdBHd2LNiiuImKZaEurYigCxe2YEHsBaMoPuGhjzP4hyQ3Jn+SP8brzYEfSZw553wz38w/+c4YAEANAPwFAGbvz9/wPe0/g3ewFgDw8/1hfU+sIPqjwbp6eXmJysvLITEx0dXS0vK3nuW7uzvRxMTEUWNjI+zu7rKkZpbD4fzk8Xis9PR0cHV1ZZzNm5ubIBQK4fDwEG5ubuDp6YnEMDU1BWtra3BzcwNPT0/w8/NjLPbR0REMDg4Cn8+XpjHTYK+urmBqagomJydhaWkJRCIRLRAsFgvCw8MhISGBPGw2m1Y/eY20DnZ1dRW6u7uhv79f7SQlO2ZmZkJeXh4EBQWp7E9rYNFxbW0tDAwMyE3K0dER/P39CV3t7e0JfdGQzufn54TeGxsbcHp6Krd/RkYG1NTUgIuLC23QWgHb09MD+fn58Pr6KpVIVFQUoWJ8fDy4u7vTSnJ/f19M//n5eak+hoaG0NnZCTk5ObR8MQ4WKYa0lbSUlBQoKCiAsLAwWkl91Gh5eRk6OjpgZGREqklubi50dXUp9c0o2OTkZBgbGxMHRZo2NDRAdHS00kRUaTA3NwcVFRWE5pQlJSXB6OioQjeMgeVyuVLB6I62KiBl28qyCAdbIBB86JIRsEVFRdDe3i4OghtHdXW1Jjho98VNEONRVlhYCG1tbXL7awyWz+cDHjwo+0ygkjERNGV4cODxeL8A1gjs8/MzOeWcnJwQx1lZWdDb20t7VphsmJ2dDX19fcSlk5MTHgnBxMREKoRGYHEWqRF1dnaGvb09MDIyYhIDbV8vLy9k4I+Pj0kfXEaS9MbvNALr4OBADgBoQ0NDkJqaSjs5bTQcHh6GtLQ04hoPKmdnZ8zMLFIGqYPG4XAAX/5fwfCwcnBwQFLBJYVLizK1Z1aSwvIooyvgivLSg0VJRtlPPP3M6oq7EnH1NH4fjG+3ZiWPj7Ibpx6sfoOS2Xy+6m6sdRqXlpZCU1PTF9iLAcrKyqC5uVnu+VjtNTs7OwuxsbHEqbGxMaBUamaGJSLd2ePjI9jY2AD+GkObmZmBmJgYzY+L6CEgIEAsjdTV1UFlZaXukAJAfX09VFVVkRxQElpfX2fmhwB6QZELVUTKtra2wMfHRyeAt7e3wdfXVxwbVUeUbSRNbRpTTiIjI2FxcZF8RPUQ1X5dGFYNUH1Ei4iIgIWFhV/S0BgsgkPnlNFR+ZgeDIw5Pj4udouDj+BlTWOw6LC1tRVKSkp0AlhWvm1paYHi4mK548kIWPSMG5SkooibF65p/KsNw80H16TkJoTvWGqDkheTMbDoXFbWpL5TlIA6AyE7sOiDjqrJKFgMiqUP3KHf3t7EOFAqwVlA4dzCAm8xqG739/eEKehfUgIyMDAg9R70rcwYB4sBsSyB62ZlZUUqPhaisLAVFxcHwcHBSl9T+DrBkuf09DSp68oWykJCQoggju9UOqYVsFRgnAmkNqVAyiZkbm5OSpZ2dnZSJcuLiwtSsnx4eJCLAZVD3B9k36PKAGsVLBUcVT6k39ramrJ8FP4/MDCQ0JVSNVV19ilgqaR2dnZIrRXpjfS8vLxUmK+trS2psIeGhhL6e3t7q4pPqv2ngpXNFC+OIF1vb2+lLpBYWVkReuNFEiZNp2CZBELHlx4sHVmGzkh+tTb6mdXP7FfjpBr5fEhjAPjh4eHxLwpYXC7Xjs1m61ZgUgOcZJfr6+tHgUBwgcKgUCj854++gosXrH/ra7cKyEBupWZoyJbfpvv/s0cshsAwHcoAAAAASUVORK5CYII=" mediaID="Square_cst_O"/></media></snapdata>