<snapdata remixID="15052347"><project name="U5L6-TicTacToe" app="Snap! 11.0.8, https://snap.berkeley.edu" version="2"><notes></notes><thumbnail>data:image/png;base64,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</thumbnail><scenes select="1"><scene name="U5L6-TicTacToe"><notes></notes><hidden></hidden><headers></headers><code></code><blocks><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"><block s="errorObsolete"></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="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="show"></block><block s="setEffect"><l><option>ghost</option></l><l>30</l><comment w="78" collapsed="true">3.3.3 TIF B</comment></block><block s="setScale"><l>95</l><comment w="190" collapsed="true">Oops costumes are a bit too big.</comment></block><block s="doSetVar"><l>position number</l><l>1</l><comment w="53.333333333333336" collapsed="true">3.3.1.4</comment></block><custom-block s="for %upvar = %n to %n %cs"><l>i</l><l>1</l><l>3</l><script><custom-block s="for %upvar = %n to %n %cs"><l>j</l><l>1</l><l>3</l><script><block s="gotoXY"><block s="reportVariadicSum"><list><l>-100</l><block s="reportVariadicProduct"><list><l>50</l><block var="j"/></list></block></list></block><block s="reportDifference"><l>100</l><block s="reportVariadicProduct"><list><l>50</l><block var="i"/></list></block></block></block><block s="createClone"><l><option>myself</option></l></block><block s="doChangeVar"><l>position number</l><l>1</l><comment w="53.333333333333336" collapsed="true">3.3.1.4</comment></block></script></custom-block></script></custom-block><block s="hide"></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;list&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%l" initial="1"></input></inputs><script><block s="doReport"><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportListItem"><l></l><block var="table"/></block></autolambda><list></list></block><block var="list"/></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? %&apos;who&apos;" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block s="reportListContainsItem"><custom-block s="status of all winning triples"></custom-block><block s="reportNewList"><list><block var="who"/><block var="who"/><block var="who"/></list></block></block></block></script></block-definition><block-definition s="tied?" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="reportVariadicEquals"><list><block s="reportFindFirst"><block s="reifyPredicate"><autolambda><block s="reportIsA"><l></l><l><option>number</option></l></block></autolambda><list></list></block><block var="table"/></block><l></l></list></block></block></script></block-definition><block-definition s="draw win line" type="command" category="lists"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doFor"><l>i</l><l>1</l><l>8</l><script><block s="doDeclareVariables"><list><l>line</l></list></block><block s="doIf"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><block s="reportListItem"><block var="i"/><custom-block s="status of all winning triples"></custom-block></block><block s="reportNewList"><list><l>X</l><l>X</l><l>X</l></list></block></list></block><block s="reportVariadicEquals"><list><block s="reportListItem"><block var="i"/><custom-block s="status of all winning triples"></custom-block></block><block s="reportNewList"><list><l>O</l><l>O</l><l>O</l></list></block></list></block></list></block><script><block s="doSetVar"><l>line</l><block s="reportListItem"><block var="i"/><block var="winning conditions"/></block></block><block s="up"></block><block s="doGotoObject"><block s="reportListItem"><l>1</l><block var="line"/><comment w="137.33333333333334" collapsed="false">This is why each line in WIN LINES is a list of points, each of which is a list of x,y coordinates:  It allows us to use the endpoints, as points, in the GO TO block.</comment></block></block><block s="down"></block><block s="doGotoObject"><block s="reportListItem"><l>2</l><block var="line"/></block></block><block s="up"></block></script><list></list></block></script></block></script><scripts><comment x="174" y="6.666666666666667" w="244" collapsed="false">I&apos;m kind of bummed that I didn&apos;t find a beautiful one-line solution using FIND FIRST, but it just gives the value it finds, not the position in the list, which is what we need to find the line endpoints in WIN LINES. So it&apos;s a plain old fashioned FOR loop.</comment></scripts></block-definition><block-definition s="clickedCommand" type="command" category="motion"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doIfElse"><block var="Turn of x ?"/><script><block s="doSwitchToCostume"><l>X</l></block><block s="doReplaceInList"><block var="position number"/><block var="table"/><l>X</l><comment w="53.333333333333336" collapsed="true">3.3.1.5</comment></block><block s="doIfElse"><custom-block s="won? %s"><l>X</l><comment w="53.333333333333336" collapsed="true">3.3.2.9</comment></custom-block><script><block s="bubble"><l>X won!</l></block><block s="goToLayer"><l><option>front</option></l></block><block s="doTellTo"><l>Sprite</l><block s="reifyScript"><script><custom-block s="draw win line"></custom-block></script><list></list></block><list></list><comment w="134.66666666666666" collapsed="true">3.3.3.TIF B.  See below.</comment></block><block s="doSetVar"><l>playing</l><block s="reportBoolean"><l><bool>false</bool></l></block><comment w="53.333333333333336" collapsed="true">3.3.3.5</comment></block></script><script><block s="doBroadcast"><custom-block s="next move for computer"></custom-block><list></list></block></script></block></script><script><block s="doSwitchToCostume"><l>O</l></block><block s="doReplaceInList"><block var="position number"/><block var="table"/><l>O</l><comment w="53.333333333333336" collapsed="true">3.3.1.5</comment></block><block s="doIf"><custom-block s="won? %s"><l>O</l><comment w="53.333333333333336" collapsed="true">3.3.2.9</comment></custom-block><script><block s="bubble"><l>O won!</l></block><block s="goToLayer"><l><option>front</option></l></block><block s="doTellTo"><l>Sprite</l><block s="reifyScript"><script><custom-block s="draw win line"></custom-block></script><list></list></block><list></list><comment w="130.66666666666666" collapsed="true">3.3.3.TIF B.  See below.</comment></block><block s="doSetVar"><l>playing</l><block s="reportBoolean"><l><bool>false</bool></l></block><comment w="53.333333333333336" collapsed="true">3.3.3.5</comment></block></script><list></list></block></script></block><block s="doSetVar"><l>Turn of x ?</l><block s="reportNot"><block var="Turn of x ?"/></block></block><block s="doIf"><block s="reportVariadicAnd"><list><block var="playing"/><custom-block s="tied?"><comment w="135.33333333333334" collapsed="false">3.3.3.1 and 3.3.3.5&#xD;See 3.3.3.3 above for why we have to test PLAYING.</comment></custom-block></list></block><script><block s="bubble"><l>It&apos;s a tie.</l></block><block s="goToLayer"><l><option>front</option></l></block></script><list></list></block><block s="doDeclareVariables"><list><l>available squares</l></list><comment w="252.66666666666666" collapsed="true">3.3.3 TIF A, here on down.  See comment below.</comment></block><block s="doSetVar"><l>available squares</l><block s="reportKeep"><block s="reifyPredicate"><autolambda><block s="reportIsA"><l></l><l><option>number</option></l></block></autolambda><list></list></block><block var="table"/></block></block><block s="doIf"><block s="reportVariadicAnd"><list><block var="playing"/><block s="reportVariadicEquals"><list><block s="reportListAttribute"><l><option>length</option></l><block var="available squares"/></block><l>1</l></list></block></list></block><script><block s="doReplaceInList"><block s="reportListItem"><l>1</l><block var="available squares"/></block><block var="table"/><l>X</l></block><block s="doIf"><block s="reportNot"><custom-block s="won? %s"><l>X</l></custom-block></block><script><block s="bubble"><l>It&apos;s a tie.</l></block><block s="goToLayer"><l><option>front</option></l></block><block s="doSetVar"><l>playing</l><block s="reportBoolean"><l><bool>false</bool></l></block></block></script><list></list></block></script><list></list></block></script></block-definition><block-definition s="how many %&apos;letter&apos; in %&apos;list&apos; (2)" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs><input type="%s" initial="1"></input><input type="%l" initial="1"></input></inputs><script><block s="doReport"><block s="reportListAttribute"><l><option>length</option></l><block s="reportKeep"><block s="reifyPredicate"><autolambda><block s="reportVariadicEquals"><list><l></l><block var="letter"/></list></block></autolambda><list></list></block><block var="list"/></block></block></block></script></block-definition><block-definition s="opponent %&apos;player&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%s" initial="1"></input></inputs><script><block s="doIf"><block s="reportVariadicEquals"><list><block var="player"/><l>X</l></list></block><script><block s="doReport"><l>O</l></block></script><list></list></block><block s="doReport"><l>X</l></block></script></block-definition><block-definition s="wining square for player %&apos;player&apos;" type="command" category="variables"><header></header><code></code><translations></translations><inputs><input type="%s" initial="1"></input></inputs></block-definition><block-definition s="winning triple for player %&apos;player&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%s" initial="1"></input></inputs><script><block s="doReport"><block s="reportFindFirst"><block s="reifyPredicate"><autolambda><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><custom-block s="how many %s in %l"><block var="player"/><l/></custom-block><l>2</l></list></block><block s="reportVariadicEquals"><list><custom-block s="how many %s in %l"><custom-block s="opponent %s"><block var="player"/></custom-block><l/></custom-block><l>0</l></list></block></list></block></autolambda><list></list></block><custom-block s="status of winning triples"></custom-block></block></block></script></block-definition><block-definition s="how many %&apos;player&apos; in %&apos;spaces&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%s" initial="1"></input><input type="%l" initial="1"></input></inputs><script><block s="doReport"><block s="reportListAttribute"><l><option>length</option></l><block s="reportKeep"><block s="reifyPredicate"><autolambda><block s="reportVariadicEquals"><list><l></l><block var="player"/></list></block></autolambda><list></list></block><block var="spaces"/></block></block></block></script></block-definition><block-definition s="status of 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="can player %&apos;who&apos; win now" type="predicate" category="variables"><header></header><code></code><translations></translations><inputs><input type="%s" initial="1"></input></inputs><script><block s="doReport"><block s="reportIsA"><custom-block s="winning square for player %s"><block var="who"/></custom-block><l><option>number</option></l></block></block></script></block-definition><block-definition s="winning square for player %&apos;player&apos;" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs><input type="%s" initial="1"></input></inputs><script><block s="doDeclareVariables"><list><l>triple</l></list></block><block s="doSetVar"><l>triple</l><custom-block s="winning triple for player %s"><block var="player"/></custom-block></block><block s="doIf"><block s="reportIsA"><block var="triple"/><l><option>list</option></l></block><script><block s="doReport"><block s="reportFindFirst"><block s="reifyPredicate"><autolambda><block s="reportIsA"><l></l><l><option>number</option></l></block></autolambda><list></list></block><custom-block s="winning triple for player %s"><block var="player"/></custom-block></block></block></script><list></list></block><block s="doReport"><l></l></block></script></block-definition><block-definition s="next move for computer" type="reporter" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doIf"><custom-block s="can player %s win now"><l>O</l></custom-block><script><block s="doReport"><custom-block s="winning square for player %s"><l>O</l></custom-block></block></script><list></list></block><block s="doIf"><custom-block s="can player %s win now"><l>X</l></custom-block><script><block s="doReport"><custom-block s="winning square for player %s"><l>X</l></custom-block></block></script><list></list></block><block s="doReport"><custom-block s="best empty square"></custom-block></block></script></block-definition><block-definition s="best empty square" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="reportFindFirst"><block s="reifyPredicate"><autolambda><block s="reportListContainsItem"><block var="table"/><l></l></block></autolambda><list></list></block><block s="reportNewList"><list><l>5</l><l>1</l><l>3</l><l>7</l><l>9</l><l>2</l><l>4</l><l>6</l><l>8</l></list></block></block></block></script></block-definition></blocks><primitives></primitives><stage name="Stage" width="480" height="360" costume="1" 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="790"><pentrails>data:image/png;base64,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</pentrails><costumes><list id="791"><item><ref mediaID="U5L6-TicTacToe_Stage_cst_Untitled"></ref></item></list></costumes><sounds><list struct="atomic" id="792"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites select="2"><sprite name="Square" idx="1" x="50" y="-50" heading="90" scale="0.95" volume="100" pan="0" rotation="1" draggable="false" hidden="true" costume="1" color="80,80,80,1" pen="tip" id="797"><costumes><list id="798"><item><ref mediaID="U5L6-TicTacToe_Square_cst_Empty"></ref></item><item><ref mediaID="U5L6-TicTacToe_Square_cst_X"></ref></item><item><ref mediaID="U5L6-TicTacToe_Square_cst_O"></ref></item></list></costumes><sounds><list struct="atomic" id="799"></list></sounds><blocks></blocks><variables><variable name="position number"><l>10</l></variable></variables><scripts><script x="30.333332333333345" y="1600.600000000005"><block s="doSetVar"><l>winning conditions</l><block s="reportNewList"><list><block s="reportNewList"><list><block s="reportNewList"><list><l>-100</l><l>50</l></list></block><block s="reportNewList"><list><l>100</l><l>50</l></list></block></list></block><block s="reportNewList"><list><block s="reportNewList"><list><l>-100</l><l>0</l></list></block><block s="reportNewList"><list><l>100</l><l>0</l></list></block></list></block><block s="reportNewList"><list><block s="reportNewList"><list><l>-100</l><l>-50</l></list></block><block s="reportNewList"><list><l>100</l><l>-50</l></list></block></list></block><block s="reportNewList"><list><block s="reportNewList"><list><l>-50</l><l>100</l></list></block><block s="reportNewList"><list><l>-50</l><l>-100</l></list></block></list></block><block s="reportNewList"><list><block s="reportNewList"><list><l>0</l><l>100</l></list></block><block s="reportNewList"><list><l>0</l><l>-100</l></list></block></list></block><block s="reportNewList"><list><block s="reportNewList"><list><l>50</l><l>100</l></list></block><block s="reportNewList"><list><l>50</l><l>-100</l></list></block></list></block><block s="reportNewList"><list><block s="reportNewList"><list><l>-100</l><l>100</l></list></block><block s="reportNewList"><list><l>100</l><l>-100</l></list></block></list></block><block s="reportNewList"><list><block s="reportNewList"><list><l>-100</l><l>-100</l></list></block><block s="reportNewList"><list><l>100</l><l>100</l></list></block></list></block></list></block></block></script><comment x="31.99999999999997" y="1798.6000000000022" w="363.3333333333333" collapsed="false">TIF B:  First of all, we don&apos;t want Square, the sprite with nine clones to show the board, to move around.  So I added another sprite, named Sprite.  It&apos;s hidden, but can draw lines with its thick red pen.  (Click on Sprite at the right to see its code.)  The actual work is done in procedure DRAW WIN LINE.  But instead of running DRAW WIN LINE in the Square sprite (this one), we TELL Sprite TO do it. </comment><script x="36.33333333333334" y="1897.9333333333361"><custom-block s="draw win line"><comment w="90" collapsed="true">TIF B inside.</comment></custom-block></script><comment x="34.66666666666666" y="1922.9333333333325" w="358" collapsed="false">We modify makeBoard for TIF B because drawn lines are behind sprites on the stage, so the win line is hidden by the board.  To fix that, we apply a ghost effect (transparency) to the board sprites.  The value 30 for the ghost effect was found by experiment.  Any more and the board is too faint; any less and the line is.</comment><script x="35.66666666666666" y="2008.9333333333284"><custom-block s="makeBoard"><comment w="90" collapsed="true">TIF B inside.</comment></custom-block></script><comment x="31.333333333333343" y="1136.933333333337" w="358.6666666666667" collapsed="false">3.3.3 TIF A&#xD;This is quite complicated!&#xD;We are asked to make a check, never mind details yet, after the eighth move, because that&apos;s when the last move is forced.  But if the eighth move causes O to win (it has to be O because odd numbered moves are X and even numbered moves are O), then we shouldn&apos;t do this.  That&apos;s why the IF around this code has to include a check of PLAYING.&#xD;&#xD;If O didn&apos;t just win, then we are going to imagine filling the final square with X (because move 9, an odd-numbered move, is always X).  But we&apos;re not really going to change what&apos;s on the board, just what&apos;s in the BOARD list.  (Really we shouldn&apos;t even do that; we should copy the list and change the copy.  But if the eighth move has just happened and X can win on the next move, it&apos;s okay that we&apos;ve already marked that square as belonging to X; we&apos;ll do it again when player X actually clicks the square.)&#xD;&#xD;It&apos;s just after the eighth move if there&apos;s exactly one number left in BOARD.  We compute the list of numbers in BOARD, for two purposes:  First we see if there&apos;s exactly one number.  If so, we change that item of BOARD to X.  Then, if X didn&apos;t win, we can announce a tie. &#xD;&#xD;Note: The code from 3.3.3.1 that checks for a tie on the ninth move is now never going to succeed, because we&apos;re catching ties early.  But there&apos;s no need to remove it, just in case a player manages to click the ninth square before we locate it.  Maybe mark it as obsolete in a comment.  </comment><comment x="29.99999999999997" y="1521.6000000000058" w="356" collapsed="false">3.3.3.TIF B starts here.  The instruction below only needs to be run once.  It makes a list of the two endpoints of each of the lines to mark a win.  It must be in the same order as POSSIBLE WINNING TRIPLES. </comment><script x="403.44368489583326" y="657.5999999999996"><custom-block s="opponent %s"><l></l></custom-block></script><script x="34" y="10"><block s="receiveMessage"><l><option>any message</option></l><list><l>data</l></list></block><block s="doIf"><block s="reportVariadicEquals"><list><block var="data"/><block var="position number"/></list></block><script><custom-block s="clickedCommand"></custom-block></script><list></list></block></script><script x="92.66666566666663" y="179.9333333333342"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="doIf"><block s="reportVariadicAnd"><list><block var="playing"/><block s="reportVariadicEquals"><list><block s="getCostumeIdx"></block><l>1</l></list></block></list></block><script><custom-block s="clickedCommand"></custom-block></script><list></list></block></script><script x="97.999999" y="293.26666666666654"><block s="receiveGo"></block><block s="clear"></block><custom-block s="makeBoard"></custom-block><block s="doSetVar"><l>Turn of x ?</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><block s="doSetVar"><l>table</l><block s="reportNumbers"><l>1</l><l>9</l></block></block><block s="doSetVar"><l>playing</l><block s="reportBoolean"><l><bool>true</bool></l></block></block></script><script x="85" y="143.60000000000036"><block s="reportMap"><block s="reifyReporter"><script></script><list></list></block><block s="reportNewList"><list><l>1</l><l>2</l><block s="reportListItem"><l></l><block var="table"/></block></list></block></block></script></scripts></sprite><sprite name="Sprite" idx="2" x="100" y="-100" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="1" color="255,32,0,1" pen="tip" id="1013"><costumes><list id="1014"><item><ref mediaID="U5L6-TicTacToe_Sprite_cst_Untitled"></ref></item></list></costumes><sounds><list struct="atomic" id="1015"></list></sounds><blocks></blocks><variables></variables><scripts><script x="27" y="23.66666666666667"><block s="receiveGo"></block><block s="hide"></block><block s="setSize"><l>5</l></block><block s="setColor"><color>255,32,0,1</color></block></script></scripts></sprite><watcher scope="Square" var="position number" style="normal" x="10" y="298.500002" color="243,118,29" hidden="true"/><watcher var="playing" style="normal" x="10" y="325.499996" color="243,118,29" hidden="true"/><watcher var="table" style="normal" x="0" y="27" color="243,118,29" extX="80" extY="70"/><watcher var="Triple" style="normal" x="361" y="10.999998000000005" color="243,118,29" extX="80" extY="70"/></sprites></stage><variables><variable name="playing"><bool>true</bool></variable><variable name="table"><list struct="atomic" id="1030">1,2,3,4,5,6,7,8,9</list></variable><variable name="Triple"><list struct="atomic" id="1031">O,O,9</list></variable><variable name="winning conditions"><list id="1032"><item><list id="1033"><item><list struct="atomic" id="1034">-100,50</list></item><item><list struct="atomic" id="1035">100,50</list></item></list></item><item><list id="1036"><item><list struct="atomic" id="1037">-100,0</list></item><item><list struct="atomic" id="1038">100,0</list></item></list></item><item><list id="1039"><item><list struct="atomic" id="1040">-100,-50</list></item><item><list struct="atomic" id="1041">100,-50</list></item></list></item><item><list id="1042"><item><list struct="atomic" id="1043">-50,100</list></item><item><list struct="atomic" id="1044">-50,-100</list></item></list></item><item><list id="1045"><item><list struct="atomic" id="1046">0,100</list></item><item><list struct="atomic" id="1047">0,-100</list></item></list></item><item><list id="1048"><item><list struct="atomic" id="1049">50,100</list></item><item><list struct="atomic" id="1050">50,-100</list></item></list></item><item><list id="1051"><item><list struct="atomic" id="1052">-100,100</list></item><item><list struct="atomic" id="1053">100,-100</list></item></list></item><item><list id="1054"><item><list struct="atomic" id="1055">-100,-100</list></item><item><list struct="atomic" id="1056">100,100</list></item></list></item></list></variable><variable name="Turn of x ?"><bool>true</bool></variable></variables></scene></scenes></project><media name="U5L6-TicTacToe" app="Snap! 11.0.8, https://snap.berkeley.edu" version="2"><costume name="Untitled" center-x="217" center-y="123.5" image="data:image/png;base64,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" mediaID="U5L6-TicTacToe_Stage_cst_Untitled"/><costume name="Empty" center-x="29" center-y="28" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADkAAAA5CAYAAACMGIOFAAABVUlEQVR4Aeyasa2DQAyGrTcBI6RhBmZgIzqOEdjgZYIsQJFItMwQRsgIsZGuOCmmcIrYp186JwqWw//5o+SPiBIR3bieldZNIJmNGiK6UJ3VZEjmO87e9/2eUqIUuISBaXau4xSQ3KR5nmkcx9AlDMJyEPJHAdl13aVtW3lsuRX3CIOwZIICMl+s7RuQtRiFSZgMtAE8roFknUaFydP1BGrCZCBZp1ErMqlzAlLfTawOTMbypaeFSX03sTowGcuXnhYm9d3E6sBkLF96WpjUdxOrA5OxfOlpYVLfze86ljvDpGVrHmdg0qMVSyaYtGzN4wxMerRiyQSTlq15nIFJj1YsmWDSsjWPMzDp0YolU2FyXdfXtm0vyx95mhEGYcmZCshlWWgYBpqm6cf13f2FQVg+QvLFhptN5PfPJbswCAvXccSkvJD+4F//ldYjQ94Z8Fpp3d8AAAD//+zHa5sAAAAGSURBVAMAwabGwk2sEIsAAAAASUVORK5CYII=" mediaID="U5L6-TicTacToe_Square_cst_Empty"/><costume name="X" center-x="29" center-y="29" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADkAAAA6CAYAAAAKjPErAAAEmUlEQVR4AdyaPU/bQBjHjxYxIZGhA1PJTiTyDSDfIAwMTCQrGYCNpSKMncgAiI30EwBDJZaKDP0AkVgYKjXZqNQBqRkQUqXez+oTnR07ie075wXl7/NzL889P9/5HB95p+bzL2diAVnXGTdaP+dEXc3xS+uPFuc3QOpzBXleKTUP+qiUWtJa1uI8J5Da9j5vy8vLb8fHx6per8+UiHl1ddWDCB6CkEu9Xm/p/v5eHRwcqJOTk5nR09OTen5+7vOtr6//FiMI6eW3221VKpXUy8uLZ0/7oVqtqtvb236Y19fXamdn54Nk+CDL5bLkq1kBBbDZbPbjZvZVKpW+zYkPslgsKq4CBWjaQYOAe3t7qq7XEmI35YOkgKswC6BhgOaIwiIagKQgCpSRpXzSigNIrKGQFEwraFxAWCIhKQT04eFBraysYCpW25Jeddt69fUyMj4wHZF0yz1o2pIfTIdCUnlra0u1Wq2JgwLDKBITGheQuiMhqcSqO0nQIODm5qYij9jG0ViQOJoUKDDmCG5sbPge/MQ2SmND4ihr0DBAZlQulyOcsRULEq9ZgdoCJObYkDRyDZoMkMjClQgSV65AeTwdHR3RhSfuwSRT1Gv8/5AYkva2QQHkOczzGP82APGTChIHtkCDgHwB4fUp7iJDTEGlhsRhWtAwQKZoPp/HfWpZgSSKKFBGg/IoRQHiL6pN3HxrkHRMYIwAUw2be2t7ezvy20kWgMRhFRKHgBI8iwY2qlarA6CdTse3xcKF4QLRnjY2ZR2S4LiXCDgKVEaYlPouAfHvBBLHrIphoJeXl94IMtrUcw1IH84gcR4GWqvVvE0yyhHfblxMUXyLnELSiYAWCgVMn9hLKpfLvjwXhnNICXphYUFOM0+dQ7K4lPSWyePj4wBc2Ko7UMlChnNIAGWRId6LiwsVtepS7kJOIRkpE5B7cH9/39szyhLUGSSArJwyMgBWKhXPlMUoK1AnkEFAdtYE0KPUhyxBrUOGAZojqvn6nyjQ09PTfp3gSRLbKmQcQAk2DLSu/2mDL6mTNrUGSVDmiDFFTXtYoAJKG6lHW3yKnSa1AsmVJygJhGBNW/KHpYDShrZSD9sGaGpIAjHvIYIkTwKNm9IWH9IOOy1oKshgAARHngSYNMUHvqQ9dhrQxJDBjnnmNRoNiSt1in9boIkgCcC8sgDy7sh9lZrOcEA/NkBjQ9JxFoDCSn9pQWNB0mGWgLZAx4ZkOk4C0AboWJC8SbC1KB26ugfFf1TKTEoydUdCAsg7IS+/dL62tqYYVduLDL7HURLQoZBBQHbW2BGfFKBchDBQZpoMhNSTNBIyDJARdL2zJoGNSoOgXHxzxpntQyGnHVAAAD07OxPT2+oMAx2AnBVAITs8PAz9PeDr66tUUT5ICsy5zT04TVO0H3XghF0Htlckm4FilMX2QZ6fn//t6H/EUDhZQCKIpyCo8QPfRYFcxGWv13tPinZ3d9Xd3Z3iNWpW1O12VciOfEEgi4CZurq6UrwMz5pYZU0Off4DyI4++ab1psXnuz4050BwoK8C2dBQNa3PWp+0vsyB4ECtfwAAAP//R2JUgwAAAAZJREFUAwCfzUJdHaOfQQAAAABJRU5ErkJggg==" mediaID="U5L6-TicTacToe_Square_cst_X"/><costume name="O" center-x="28" center-y="28" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADkAAAA5CAYAAACMGIOFAAAFYElEQVR4AdyagVniQBCFJ9eAWoFagVqBoQKxAqECtQKgArECtQK1AqACsQLpQDvg8ue+2Rv4sskmJES478adney8eS+72QTCHxEZishkj22IyESfxCKyryYqUvb537rI0XK5lF23ZMJGibn/KyITcQN3ZIeddR0rIpvUtVgsZDabpYbfZK117EZEIub+/l4uLi4kiqLUTk9PJY7j1PCjKErjjGEsOevk6urXJpLZ6ff7cnR0lAoZj8cyn88LeTKGsXFyAsgFY5HMemFiiQEbi/z5+ZHRaCTMzvPzs9DPqn98fCyXl5ep4UvGP3LBAAtM+hnDSoc2EqmEhsPhSmFE3N7eyuvrq9upmZ3pdCrTxPCTzSE9xhjGkmNBhsOhO3E2XsWvLJLriKVlzzYzNZlMZJEst/F4LN1ut5ATYxi7SHLIBUOTwKYGtTRWpS0tksLX19cCMS3ILDAjzFKcXFsaL9uSCwZYYGo+tahJbY2VaUuJpEin05G3tzdX4+bmJt1gmBEX3NABaz6fC9gKRU1qw0FjoW0pkSwbiiv4YDAQrsvDw0MN1daCCTY1FJTacNB+aBssko2Aogr89PQkxLTfVEsNaik+HIhpP6QNEslSYUtXQHbDXq+n3cZbalFTC8EFTtovaoNE2iVydXW1sukUFajrOJsPtRXPctKYry0UCTjbOwAHBwfCcsFvw6gNB2rDCW74/8z/N1ckOxlLQ9O5FtgQtL/tltpw0Lpwg6P2fW2uSM6cgnDfuru78+FsLQ4HuFAQbnDEz7NckS8vLy7XnkEXbMmxXEI2IK9IzhL3JdXBDVr9tlvLZTabCVzzOHlF2jPE8yTXQx7QNo/B5ezszJW0XF3QOF6RPEPquG63q+6vaXu9nuNiubqgcbwi2aJ13Pn5ubq/prWcLNcsgl6RWYN3NeYV+fn56TTZs+aCLTuWk+WaRcsr0u5YXOhZyW3GLCfLNYuTV2TW4F2NeUXaLdreL3+LUMvJcs3i5xVZZjlkATcds0vUcs2ou/SKtIMtoI236ZfgFHlFxnHsNBQ9UbiBW3QsJ8s1g4J/Ju1TDs+HGcmtht7f3119y9UF/zv+meQ+ZD+g2gv9f347Hlx0ufKxC655TLzLlSR7hkI/hZPXpIFtuRQsVYbnv2m2D8F8tix6RkwRG/4DB7hoGctRY+tt7kxylviYpUn9fl/d1lrLAW5wLCKTK5Jk+/UCH2nsrsbxbRpc4KA16auf1xaKPDk5Eft1PWeSCz8PtIlj1LRfQ8IJbiG1CkUCwoWuj07sapu8fAGvrFGzk7yDoSUXLnDCD7EgkTw2sTTsLcUWDSlUdQwbja0FB7jAKRQzSCRg3Ivs9cjy4Y0wLcebMLD5TQGt4sMBLtoPaYNFAsZOZl++sHw4y4+Pjxyu1cBEIDUUmNpw0H5oW0okoNyXPj4+hGVDHxJ84Qshu/NxrIqBARaYmk8talJbY2Xa0iIBZ7mwhNgA6GP0mVWMmzXXEvEQYyw55GJgaR416FNTY2XbSiIpwvbNWeclKWeaGEaMM871yoyMRqP01yGI4EEfw9c4YxhLDrlgYGCCTYxaxKpaZZEUZIfjK3tmgvsWMWvMAMcxRHA9YfjEMMbYHHywwOQ4NYhtYhuJ1MIQYVv/+vqSh4cHse8RdUxRSw65YIAFZlFO6PFaRGoxlhUbBtv89/d3+jselhzG7PCsieETw/ilB2PJIRcMxaurrVWkJcVM8FGNJYcxO1xfGD4xjDGMtbk1+/5vBmou1Cac/5uBNlnVXXtluUZRNK27QDW8zbLWdayITKDjZED6O9RdbtGRmPu/LtId2CMn3XhYop1E1L7a7C8AAAD//8xYKyUAAAAGSURBVAMA11BJ4ODs0soAAAAASUVORK5CYII=" mediaID="U5L6-TicTacToe_Square_cst_O"/><costume name="Untitled" center-x="101" center-y="62.5" image="data:image/png;base64,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" mediaID="U5L6-TicTacToe_Sprite_cst_Untitled"/></media></snapdata>