<snapdata remixID="14940859"><project name="U3L1-Tic-Tac-Toe Setup" app="Snap! 11.0.8, https://snap.berkeley.edu" version="2"><notes></notes><thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAADOklEQVR4AezSMZLbMABD0Z29/52TykUKW4oliiDx3HjGskjg4//+8UFgIoHfHx8EJhIg4ET4rv75ISALphIg4FT8LicgB6YS6BVwKnaXvwgQ8EXC9xQCBJyC3aUvAgR8kfA9hQABp2B36YsAAV8kfE8hQMAp2KdeGnU5AaPm6AtDwL7NoxoTMGqOvjAE7Ns8qjEBo+boC0PAvs2jGj8qYFRzYSIIEDBiht4QBOzdPqI5ASNm6A1BwN7tI5oTMGKG3hAEfGR7l7wjQMB3ZPz+CAECPoLZJe8IEPAdGb8/QoCAj2B2yTsCBHxHxu+PECDgI5h7LzlqTsAjQp4PJUDAoXgdfkSAgEeEPB9KgIBD8Tr8iAABjwh5PpQAAYfidfgRgX0FPGrueQQBAkbM0BuCgL3bRzQnYMQMvSEI2Lt9RHMCRszQG4KA+22/VCMCLjXXfmEJuN+mSzUi4FJz7ReWgPttulQjAi41135hCbjfpks1ulXApZoLG0GAgBEz9IYgYO/2Ec0JGDFDbwgC9m4f0ZyAETP0hiDgLds75FsCBPyWnPduIUDAWzA65FsCBPyWnPduIUDAWzA65FsCBPyWnPduIUDAWzD2HnK1OQGvEvT+JQIEvITPy1cJEPAqQe9fIkDAS/i8fJUAAa8S9P4lAgS8hM/LVwmsK+DV5t6PIEDAiBl6QxCwd/uI5gSMmKE3BAF7t49oTsCIGXpDEHC97bdKTMCt5lyvDAHX22yrxATcas71yhBwvc22SkzAreZcrwwB19tsq8T/JeBWzZWJIEDAiBl6QxCwd/uI5gSMmKE3BAF7t49oTsCIGXpDEPDU9v40igABR5F17ikCBDyFyZ9GESDgKLLOPUWAgKcw+dMoAgQcRda5pwgQ8BSm3j+Nbk7A0YSd/5EAAT/i8XA0AQKOJuz8jwQI+BGPh6MJEHA0Yed/JEDAj3g8HE0gV8DRzZ0fQYCAETP0hiBg7/YRzQkYMUNvCAL2bh/RnIARM/SGIGDe9lWJCFg1d15ZAuZtUpWIgFVz55UlYN4mVYkIWDV3XlkC5m1SlegfAauaKxtBgIARM/SGIGDv9hHNCRgxQ28IAvZuH9H8LwAAAP//kzkAMgAAAAZJREFUAwCaJ36PlSbwAgAAAABJRU5ErkJggg==</thumbnail><scenes select="1"><scene name="U3L1-Tic-Tac-Toe Setup"><notes></notes><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><list></list></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><list></list></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="reportVariadicEquals"><list><block var="data"/><block s="reportNewList"><list></list></block></list></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><list></list></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><list></list></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="reportVariadicGreaterThan"><list><block var="start"/><block var="end"/></list></block><script><block s="doSetVar"><l>step</l><l>-1</l></block><block s="doSetVar"><l>tester</l><block s="reifyReporter"><autolambda><block s="reportVariadicLessThan"><list><block var="i"/><block var="end"/></list></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="reportVariadicGreaterThan"><list><block var="i"/><block var="end"/></list></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><list></list></block><block s="doIf"><block s="reportVariadicEquals"><list><l></l><block s="reportListItem"><l>1</l><block var="words"/></block></list></block><script><block s="doReport"><custom-block s="join words %mult%txt"><block s="reportCDR"><block var="words"/></block></custom-block></block></script><list></list></block><block s="doIf"><block s="reportVariadicEquals"><list><l></l><block s="reportListItem"><l>2</l><block var="words"/></block></list></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><list></list></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><list></list></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>Square</l></block><block s="changeXPosition"><l>50</l></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="doFor"><l>column</l><l>1</l><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>1000</l><l>1000</l></block></script></block-definition><block-definition s="X wins?" 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="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportListItem"><block s="reportListItem"><l>1</l><block var="triple"/></block><block var="board"/></block><l>X</l></list></block><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportListItem"><block s="reportListItem"><l>2</l><block var="triple"/></block><block var="board"/></block><l>X</l></list></block><block s="reportVariadicEquals"><list><block s="reportListItem"><block s="reportListItem"><l>3</l><block var="triple"/></block><block var="board"/></block><l>X</l></list></block></list></block></list></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script><list></list></block></script></custom-block><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block-definition><block-definition s="%&apos;x or o&apos; wins?" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s" initial="1"></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="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportListItem"><block s="reportListItem"><l>1</l><block var="triple"/></block><block var="board"/></block><block var="x or o"/></list></block><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block s="reportListItem"><block s="reportListItem"><l>2</l><block var="triple"/></block><block var="board"/></block><block var="x or o"/></list></block><block s="reportVariadicEquals"><list><block s="reportListItem"><block s="reportListItem"><l>3</l><block var="triple"/></block><block var="board"/></block><block var="x or o"/></list></block></list></block></list></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script><list></list></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="reportVariadicAnd"><list><block s="reportNot"><block s="reportListContainsItem"><block var="board"/><l>Empty</l></block></block><block s="reportNot"><custom-block s="%s wins?"><l>X</l></custom-block></block><block s="reportNot"><custom-block s="%s wins?"><l>O</l></custom-block></block></list></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script><list></list></block><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block-definition></blocks><primitives></primitives><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" id="801"><pentrails>data:image/png;base64,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</pentrails><costumes><list struct="atomic" id="802"></list></costumes><sounds><list struct="atomic" id="803"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites select="1"><sprite name="Square" idx="1" x="1000.0000000000014" y="999.9999999999998" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="false" costume="1" color="80,80,80,1" pen="tip" id="808"><costumes><list id="809"><item><ref mediaID="U3L1-Tic-Tac-Toe Setup_Square_cst_Empty"></ref></item><item><ref mediaID="U3L1-Tic-Tac-Toe Setup_Square_cst_X"></ref></item><item><ref mediaID="U3L1-Tic-Tac-Toe Setup_Square_cst_O"></ref></item></list></costumes><sounds><list struct="atomic" id="810"></list></sounds><blocks></blocks><variables><variable name="clone number"><l>9</l></variable></variables><scripts><script x="66" y="14"><block s="receiveGo"><comment w="339.65292968749986" collapsed="false">X goes first. Therefore it is a boolean expression. Also set the clone number to 0 so that none of the clones appear. Set the bpard to empty so that it starts clear. </comment></block><block s="gotoXY"><l>-50</l><l>50</l></block><block s="doSetVar"><l>X’s turn?</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><block s="doSetVar"><l>clone number</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><comment w="207.9999999999999" collapsed="false">The script variable makes the board appear 9 times and we put it Empty for all the boxes so that it starts with nothing inside.  </comment></block></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>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><comment w="337" collapsed="false">This makes the itc tac toe board So that we make three columns. We change the x and y so that the columns can be under eachother. Then the script goes off the board so that we dont have a hanging box. </comment></block></block><custom-block s="make Tic Tac Toe board"><comment w="126.99999999999989" collapsed="false">The script variable is called winning triples becuase we put a list of all the comibitnations of the winning pairs. </comment></custom-block></script><script x="45" y="372.16666666666663"><custom-block s="%s wins?"><l></l><comment w="178" collapsed="false">We use this to check if X or O wins. </comment></custom-block></script><script x="22.6416015625" y="296.79999999999995"><custom-block s="X wins?"><comment w="253" collapsed="false">The triples are the winning combinations. If the item is in one to the combitnations then we report that the x wins.If not the o wins. </comment></custom-block></script><script x="10" y="433.3833333333338"><block s="receiveOnClone"></block><block s="doWaitUntil"><block s="reportVariadicEquals"><list><block s="reportListItem"><block var="clone number"/><block var="board"/><comment w="150" collapsed="false">This makes the o appear when the item of the clone number of baord is equal to O. </comment></block><l>O</l></list></block></block><block s="doSwitchToCostume"><l>O</l></block></script><script x="539" y="265.1333333333332"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="doIf"><block s="reportVariadicEquals"><list><block s="getCostumeIdx"></block><l>1</l></list></block><script><block s="doIf"><block s="reportVariadicEquals"><list><block var="X’s turn?"/><block s="reportBoolean"><l><bool>true</bool></l></block></list><comment w="176.0990234374999" collapsed="false">This makes it so that X starts and we switch the coutumes to X. Then when clicked on the box we repalce it with an X </comment></block><script><block s="doSwitchToCostume"><l>X</l></block><block s="doSetVar"><l>X’s turn?</l><block s="reportBoolean"><l><bool>false</bool></l></block></block><block s="doReplaceInList"><block var="clone number"/><block var="board"/><l>X</l></block><block s="doIf"><custom-block s="%s wins?"><l>X</l></custom-block><script><block s="doSayFor"><l>Congrats X wins!!!</l><l>2</l><comment w="274.9009765625001" collapsed="false">When X wins you say congratulate them by saying congrats and check if x wins. </comment></block><block s="doStopThis"><l><option>all</option></l></block></script><list></list></block></script><list></list></block><block s="doIf"><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block var="X’s turn?"/><block s="reportBoolean"><l><bool>false</bool></l></block></list></block><block s="reportListContainsItem"><block var="board"/><l>Empty</l></block></list><comment w="257" collapsed="false">This code for o&apos;s turn goes if x&apos;s turn is flase and the bard is empty. You reapeat to check if o of baord is empty. Then it picks a random number from 1 to 9. </comment></block><script><block s="doUntil"><block s="reportVariadicEquals"><list><block s="reportListItem"><block var="o turn"/><block var="board"/></block><l>Empty</l></list></block><script><block s="doSetVar"><l>o turn</l><block s="reportRandom"><l>1</l><l>9</l></block></block></script></block><block s="doReplaceInList"><block var="o turn"/><block var="board"/><l>O</l></block><block s="doSetVar"><l>X’s turn?</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><block s="doIf"><custom-block s="%s wins?"><l>O</l></custom-block><script><block s="doSayFor"><l>Congrats O wins!!!!</l><l>2</l><comment w="224" collapsed="false">You tell O that you win and check if it does. </comment></block><block s="doStopThis"><l><option>all</option></l></block></script><list></list></block></script><list></list></block></script><list><custom-block s="draw?"></custom-block><script><block s="doSayFor"><l>Its a draw!!!</l><l>2</l><comment w="185" collapsed="false">Check if its a draw and then say it is a draw. </comment></block><block s="doStopThis"><l><option>all</option></l></block></script></list></block></script></scripts></sprite><watcher scope="Square" s="xPosition" style="normal" x="10.000000000001137" y="9.999999999999986" color="74,108,212" hidden="true"/><watcher scope="Square" s="yPosition" style="normal" x="10.000000000001137" y="31.00000200000003" color="74,108,212" hidden="true"/><watcher scope="Square" var="clone number" style="normal" x="9.038277511961724" y="309.9904386220104" color="243,118,29" hidden="true"/><watcher var="board" style="normal" x="2.8899521531095616" y="39.88995815311" color="243,118,29" hidden="true"/><watcher var="X’s turn?" style="normal" x="7.038277511961951" y="11.038281511961742" color="243,118,29" hidden="true"/><watcher var="winning triples" style="normal" x="-0.5598086124389283" y="1.7177093492822202" color="243,118,29" hidden="true"/><watcher scope="Stage" s="reportMouseX" style="normal" x="11.483253588515254" y="11.48325358851671" color="4,148,220" hidden="true"/><watcher scope="Stage" s="reportMouseY" style="normal" x="11.483253588515254" y="35.59808842105264" color="4,148,220" hidden="true"/><watcher var="o turn" style="normal" x="10.000000000001137" y="10" color="243,118,29" hidden="true"/></sprites></stage><variables><variable name="X’s turn?"><bool>true</bool></variable><variable name="board"><list struct="atomic" id="1051">Empty,Empty,Empty,Empty,Empty,Empty,Empty,Empty,Empty</list></variable><variable name="winning triples"><list id="1052"><item><list struct="atomic" id="1053">1,2,3</list></item><item><list struct="atomic" id="1054">4,5,6</list></item><item><list struct="atomic" id="1055">7,8,9</list></item><item><list struct="atomic" id="1056">1,4,7</list></item><item><list struct="atomic" id="1057">2,5,8</list></item><item><list struct="atomic" id="1058">3,6,9</list></item><item><list struct="atomic" id="1059">1,5,9</list></item><item><list struct="atomic" id="1060">3,5,7</list></item></list></variable><variable name="o turn"><l>7</l></variable></variables></scene></scenes></project><media name="U3L1-Tic-Tac-Toe Setup" app="Snap! 11.0.8, https://snap.berkeley.edu" version="2"><costume name="Empty" center-x="26" center-y="26" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAAA30lEQVR4AeySwQ3CQBADN4jv9RBRBIIftYCoCkE7IEQhpAN+R0IF9mdNLo6yP6+cnckqGnumgw7jTbWF6fvNazoojqdz1FpnPffHM0op699Bo51mXh/07yptyIaSCfiXSwZO19kQjSx5wYaSgdN1NkQjS16woWTgdJ3UEP21wIIPAiBJIzYkxQ+U2xAASRqxISl+oNyGAEjSiA1J8QPlNgRAkkZsSIofKLchAJI0slxDUuxEuQ0RsCRRG5JgJ0ptiIAlidqQBDtRakMELEm0TUO36yW6rpv17HfbGIb35wsAAP//YCtmxAAAAAZJREFUAwBGS82CCTBFoQAAAABJRU5ErkJggg==" mediaID="U3L1-Tic-Tac-Toe Setup_Square_cst_Empty"/><costume name="X" center-x="26" center-y="26" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAACZ0lEQVR4AezZy0ojQRQG4MOsZjU+QGaGIczMMzgMQ2YfIwRdKF6yVLyAglvFVjeCuhLxEsEXEEHpd4i4iYqaVRBv+AjqSv+GBhFS3VV1TnW3uDghIV2n/i9Vi1T3JyL6USqV13t6eneyXuVy91QAur+/q/z9V8h0/fz1u/L09DgGEOXz+YexkSHKchWLxZfNRhSAgnfv5OUDlPaFVK7Q1fVN6vJHZVKCPG+OpmdmU4M6O7+g/4UC7e7tt8ykBK0sL1Gj0UgFCphSRwf19Q9QV7nTDNTW9oWqW5uJo15j5ufUO0a5QvgZkkbpYJA3EoSLkkLpYpA1FggXukaZYJAzNggXu0KZYpBRC4QB0igbDPJpgzBICmWLQTYjEAZyozgwyGUMwmAuFBcGmaxAaGCL4sQgjzUITUxR3BhkYQGhkS5KAoMcbCA0i4uSwiADKwgNo1CSGMzPDkLTVihpDOYWAaHxW5QLDOYVA6F5iKrX6/SnvT04nEWdZzDOpkRBCHZze0unJ8eUy+XwUbxEQeE2GxisUK1Wc3LyFQOFGNwDwDYLt5/0PQoR0FtMuM9coNhBrTCuUKygKIwLFBsoLkYaxQLSxUiirEGmGCmUFcgWI4EyBnFhuFFGIG4MJ0obJIXhQsUGYUJpDOZA2fyjiA1yhQEIZYqKBXKNAQhlgooEJYUBCKWLUoKSxgCE0kEpQZMTk06OzQgdVa9Rxg+Nq9tVwuEsajJX34co44fG3799dZU19jxAqS5WbjnVwLR+9wFK68qEuYIVajabn1fXNijL5ft+YALo8ujocHF8dNjLci3Me57vH8w+AwAA//+k3GjbAAAABklEQVQDAJg3Rha9RQziAAAAAElFTkSuQmCC" mediaID="U3L1-Tic-Tac-Toe Setup_Square_cst_X"/><costume name="O" center-x="26" center-y="26" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAAFPElEQVR4AeyaX1BUVRjAv216iwVfGapxCJDqJVCSHgqGAWoa1P5oLpJNkyyS1aQsMT1k7Goz/XPBpiJls2kyYBVLRXooCwMfwv64vVSahjNYkY8CzfS23d/V66Dcs/cue9e7oswedu+553zn+53vO+ee/b69SebZH0CVGlN8PpSFC/N/BEieWeeXeDx+TZfvRr8Xr9d7sw6kWWfevG4AZbopHbfQV18PyRtvhWVdY5Pk598hHo9nVln1hE82bgrIx5/0yPjZPx2dI0eAUGrzq0EdINLdrSu42ueTb4eHTTeaQCAg95SUys+x41JZUSEAfrZ/QO+X6r+UgAwQlLoly6sD9O+NysttAamtrpLbb7vVVL/ypWXy9FMNsr0zLGNjf4ivfo1E+3qltvYhSRVszkC4iwESi8V0CBWAKdWMyscfXS5MRGtbm+z8oEt3VyZrRhPbH5MGOn9+UvD/3k93S2/fBWvk5GTbHjBRQ6za379XCosW6a7IekzU3uxeUkDANPqbZGpqShgY1zETmkodk4PLvh3ulOYmf9IuaBvIgCkuLpZdH3YLA6eiuFVf3PDQ4KC8FNiUFJRtoJZAq+Tl5cnWLUErXRy7f/dddwpQKx9bIaPHfrAl1xbQe107ZXJyUkLBdltCnWwE1L7PD8qaep/gJVayLYF++fU3eeG5ZglqMOl2M5WyuN/yFY9IezCkanKp3hKoo6NT3n1/hzBTl3q58AHvGDh4wNL1EgLht0eGvpG1DfUuIFw+JN7R0tomkUjk8htXXCUEikajghCEXdHPlUsmlglmGagUUALxpH5ne0daraNSSlXPxDY1b5BodI+qiSiBho4My4sbW9L+vFFqprixrO5hOTY6qrgraiBOwvc/UKHs6NYNNqfTp0+Jyu2UFmJHKV5U6JbeCcdlCz9x8pRpGyXQmTNjrm/VphprlQWFRTIxMaF9mv0yBWK7Xrlq9ezWGVJTVFQoseM/mWpjCkTL7GxnvhIgy+mS7fUqRSqBlD0y/Mb1AeT1ZsnZ8fGMtcVff08QJTXVz9RC7PWHD39p2iETKtnh2OnMdDEFomFNzYOWJ1vauVHY4XJzc02HVgItLS+XEyd/N+3kdiUH1LIlpaZqKIEIBH4xeMi0k5uVRIIKCgpFFTJTAlVXVcq+/j2Oh2pTnYyjIyNSVV2jFKME4qj+yuZ2LfamPqorpabpBjGF17aGtPiC+hSjBEInv79Rund02QpO0D7dZXdPnzDJKndj/IRAdGx4cq1sC3fQ1tXCF06CNUxyIkUSAtERAT1a2JcDK9dulVBoi7z+5jblZmDoZQmElQjL2o2LGYKdfCffRFzw2fV+S7GWQEggLobrNWpxbRYmdVerkF5hHduNC9oCQnlCwMS1ryYUMMS2CQdzHEMPq2IbCEEzoVTf6WnnRCH8nCwM4yYFRAegFi8pk2V1dXqOlDonC7sZ+dmBA/v1QL1dyxg6JA1ER/I3JLtIejG4EzsgaxOrkBUk4UX+KVkYdJsTEB1JdjFoSeli7cntE8Dwee4lU7AIu1hJSYkeJ2CimDBOKsnIMdrOGQgBDPr8hvVCjpUYHolfUvmkLJltLEdh9kX7Y91xDTgQZL+xyL/TU9oRK6on0pgoremcXykBGaMCRlabxC+pfOCmp6f1wHo4HJYFC3L03yqw7gi2Hx0ZlqysLAlo6X2y4KzLVEEMXRwBMoTxzoOY5xZuQ+oSyPjFH0ahPHWk87GsUxCMaxTHgQzBbr3fAHJr5u2Oq1voo10RfdF6PJ5r9v2+8nvl3Ll//vsfAAD//0DbRQQAAAAGSURBVAMAInitoCvEVH8AAAAASUVORK5CYII=" mediaID="U3L1-Tic-Tac-Toe Setup_Square_cst_O"/></media></snapdata>