<snapdata remixID="9240409"><project name="Unit3Lab2p2-TicTacToeWins" app="Snap! 5.4, http://snap.berkeley.edu" version="1"><notes></notes><thumbnail>data:image/png;base64,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</thumbnail><stage name="Stage" width="480" height="360" costume="0" color="255,255,255,1" tempo="60" threadsafe="false" penlog="false" volume="100" pan="0" lines="round" ternary="true" codify="false" inheritance="false" sublistIDs="false" scheduled="false" id="1"><pentrails>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAAAXNSR0IArs4c6QAAC99JREFUeAHt0DEBAAAAwqD1T20MH4hAYcCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBj4DAyN/gABHhb3AgAAAABJRU5ErkJggg==</pentrails><costumes><list struct="atomic" id="2"></list></costumes><sounds><list struct="atomic" id="3"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites><sprite name="Square" idx="1" x="0" y="-150" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="1" color="80,80,80,1" pen="tip" id="8"><costumes><list id="9"><item><costume name="Empty" center-x="26" center-y="26" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAAAAXNSR0IArs4c6QAAAMdJREFUaAXtmkEKgzAABEPpSejVnu1LfIvFtyqlf0rVH2wPg4YJ5LgMmfFoKQ2ecXtTbeEOw+t72wNN77nUWi99l/VTuu5xPx60P6qV44POXtJCFoIN+MnBwmOchWJl8MBCsPAYZ6FYGTywECw8xlkoVgYPLAQLj3EWipXBAwvBwmOchWJl8MBCsPAYZ6FYGTywECw8xlkoVgYPLAQLj3EWipXBAwvBwmOchWJl8MBCsPAYZ6FYGTywECz8L9y4rZr4o7Hvn+sPgDz50uUVxNUAAAAASUVORK5CYII=" id="10"/></item><item><costume name="X" center-x="26" center-y="26" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAAAAXNSR0IArs4c6QAAAiZJREFUaAXt2k9LAkEUAPBnBHnSD2DF0qewk10zC6RjmXUKokPeuhRp1+oUQWUfIYI+xUYl9t9TWGl/8Cx06NCOsCDhzu7MvDe7Gz4YRlZ3fL+dx8LTjQCAkU5n12Oxoaj1OtTRbv/cD1oCo9V6z09OLYUa9PX5AZXrqxcGAsMY+15dWQ41yLy4ZCAYCHWN9Ui+D+pxUQJ1iLtDr2+NQCXLknHLiQsqFkuwsbkVGNTD4xNMpFJwenbumBMXtLe7A7VaLRAohpnOZGBuPgez2Rk5UDweg/Lxke+obsx2iV8x3B1il8FvlAiG5esK8hMlivEM8gMlgxEC6UTJYoRBOlAqGCkQJUoVIw2iQGFglECYKCyMMggDhYlBAamgsDFoIBkUBQYVJIKiwqCDvKAoMSQgHooaQwbqhdKBIQV1o6rVKownk53mzK2fYeephKf2QeULGs0m3N3eQCKRUFnG87mkILvMcgt5ME1TS+dLBrIx7DcAVma6Ol8S0F+MXS86UOggJ4wuFCrIDaMDhQbyiqFGoYBEMZQoZZAshgqlBFLFUKCkQVgYbJQUCBuDiRIGUWGwUEIgagwGyjNIF0YV5QmkG6OCcgX5hZFFcUF+Y2RQXFBhraClbbYT583drQfvT+POozFOC5VPyjA6Muz0tvbjNorNTsHdoSBhbAAPwz7DBdmLhGnug4K+W52bQr3+HN0/OAx6rtz82AOALCLWMKyxaI3/EPVfFCjgB8oyZuoAAAAASUVORK5CYII=" id="11"/></item><item><costume name="O" center-x="26" center-y="26" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAAAAXNSR0IArs4c6QAABP9JREFUaAXtmk1MVFcUx0+MK+OMOw2hNpEyMMqiHT4CG8s4hTZpUPvhB5ZqjDJIbZsqo6YLLTNqYquCbdoaCwtbFRiFiny4QBRFFx0LDm76oWNqClq2gu5f7/+2r0Hm3fc1b3hP6kle3sz9OPf87j3vzH3nDtEsFD9jkmbDtWRJ1vAcLNCWrUGSJOmZvn6K/Uzz5rnmciBAzRZ5DuT0lZxrtYGXLg9QPD5Cibt36OrAFbp//4+kIdasXU+ZmZn0ii+fAitK6cXFLyS1MVtgicuNjj2gfZ+FKSvrJWpuauK2rK+spGuDg4qBJhQKcZjbI3Hyl5bS2nWV9GNnt1mGpH5+FuVYkDMuf46OSXv31UssXEqHvjgq4bsZ6TjfJbFVk8rL35Dw2YywKCfl5b18G3SmgE7+cOY/kEePJszYkNSnr/8Kh8IEG50cGciwy01MTNKOnSFqPXOaWtui9OmeEC1Y4E5adjMFr5cFqL39HHlycrkr4nk0KoaCAmCqgzXkdrv5wFaBTDUaOjFJHo+HamuCdKThGL379qqpTVQ/6waSYbxeLx3YH1ZVakUlILy5HlpZUcHV6YXS7XJ1oV081M4EjDwhecuWUk9vL615ZzXFbg7Jxap3XUDfHP+OJicnKRKuV1WWjkpAschH722oJHiJlmgC/fLrb/Txh7UUZjDpeGa0DEQ93G3V6reoPhzRbK4J1Nh4jL7+9gRhpuwUeEd31wVN11MFgt9i+7KxaoOdLHxseEfdrj3U3NysaosqUDQa5UrscrXplmNiMcF4DEQiBML+7KsvGx2xOrLxmNia2u0UjZ6Vi5LuQqCBq4P0yY462wJBkqX/FqyseJNuxmKiahICYSe8/NVSYUe7KhCc7t1LCN1OCISIgl9qJwpC+O93EoqmCYHwYmZ3qFa0mBVme3JofHxcsVoRCOEab5VOlZwcD43EbymapwiElthRO1XcLpfQNCGQsIfDK/4fQC7XfBobHXXsWjz8a5xcArdTXCFEt/7+PscCIcIh0imJIhAasgyM5s5WSeFMlCHCZWRkKA4lBCouKWE/XncVO9ldiA1qUWG+ohlCIGQ1L/b2KHaysxCZoOxsjzDbKgQqC/ipo/0sYdftJLlx/ToFysqFJgmBsFVnWVGWexNv1YVa01SBnMLBAxGWXxDvYoRAsCkYrKamE8d1JSfSxPCU2tMtbXyS1ZL7qkDoWPX+Rjra0PiUYju+wPWRrMEkq4kqEDpCQQtL++rNi6kNlkpdJLKf2IGAMBjIujWBsEpIx+rNi8mKrbx/friB5wU/2BbUVKsJBA3Ii8H1kNfWk+zTHNVAA5wb4TnWmxfUBYTxkQJGXnsmoQCzO7STp4P1vmzqBpoOpZZKMrAAwqZIPxuFgTJDQOiAlSooLOKnAt+fakGRpYJotrW6hrovdBpaGdkIw0DoiPMbHHbh0AuDWxEB8WxiVXDmigMvHHzpdTMZBndTQOhYUlzEB/XlF/AICDAzB79YEUQxn8/H8wSpngrqPvACxHTB9uij7dt4drWzq4eiba3c75FmwvtKYcE/O+Kl3lyesMRz9/jxE8ILWiKRoFvDQ/xCBAUIJilVSQlIHhxgmzdV8QszPjQc5wYjsY5zJWxyIey0nFYEXuNvmwDG8b4VELIduFsCNFUhfoiT91rRqU3S+tn0M5RWq1JQ/hwohcmbsa5+NtKs+EfjwoWLYn8DWTUGb2OCIOEAAAAASUVORK5CYII=" id="12"/></item></list></costumes><sounds><list struct="atomic" id="13"></list></sounds><blocks></blocks><variables><variable name="square number"><l>9</l></variable></variables><scripts><script x="20" y="20"><block s="receiveGo"><comment w="156.66666666666666" collapsed="false">Connect this to the script below it in For You To Do 4.</comment></block><block s="gotoXY"><l>0</l><l>0</l></block><block s="doWait"><l>.1</l><comment w="181.33333333333334" collapsed="true">Wait for old clones to be deleted.</comment></block><block s="doSwitchToCostume"><l>Empty</l></block><custom-block s="makeboard"></custom-block><block s="doSetVar"><l>X&apos;s turn?</l><block s="reportBoolean"><l><bool>true</bool></l><comment w="90" collapsed="true">X plays first.</comment></block></block><block s="doSetVar"><l>board</l><block s="reportNewList"><list><l>empty</l><l>empty</l><l>empty</l><l>empty</l><l>empty</l><l>empty</l><l>empty</l><l>empty</l><l>empty</l></list></block></block><block s="doSetVar"><l>counter</l><l>0</l></block></script><script x="20" y="228.0000000000001"><block s="receiveInteraction"><l><option>clicked</option></l><comment w="156" collapsed="true">This demonstration script will not be part of your actual project.</comment></block><block s="doIf"><block s="reportAnd"><block s="reportEquals"><block s="reportAttributeOf"><l><option>costume name</option></l><block s="reportGet"><l><option>self</option></l></block></block><l>empty</l></block><block s="reportGreaterThan"><l>9</l><block var="counter"/></block></block><script><block s="doIfElse"><block var="X&apos;s turn?"/><script><block s="doSwitchToCostume"><l>X</l></block><block s="doReplaceInList"><block var="square number"/><block var="board"/><l>X</l></block><block s="doIfElse"><custom-block s="won? %s"><l>X</l></custom-block><script><block s="doSetVar"><l>counter</l><l>9</l></block><block s="doBroadcast"><l>X is the winner</l></block></script><script><block s="doChangeVar"><l>counter</l><l>1</l></block><block s="doIfElse"><block s="reportEquals"><block var="counter"/><l>9</l></block><script><block s="doBroadcast"><l>tie game</l></block></script><script><block s="doSetVar"><l>X&apos;s turn?</l><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block></script></block></script><script><block s="doSwitchToCostume"><l>O</l></block><block s="doReplaceInList"><block var="square number"/><block var="board"/><l>O</l></block><block s="doIfElse"><custom-block s="won? %s"><l>O</l></custom-block><script><block s="doSetVar"><l>counter</l><l>9</l></block><block s="doBroadcast"><l>O is the winner</l></block></script><script><block s="doChangeVar"><l>counter</l><l>1</l></block><block s="doSetVar"><l>X&apos;s turn?</l><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block></script></block></script></block></script><script x="20" y="914.9999999999942"><block s="receiveMessage"><l>O is the winner</l></block></script><script x="20" y="984.9999999999977"><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><custom-block s="status of triple %l"><l/></custom-block></autolambda><list></list></block><list><custom-block s="Tic-Tac-Toe Wins"></custom-block></list></custom-block></script><script x="20" y="1026.999999999999"><block s="receiveGo"></block><block s="removeClone"><comment w="118" collapsed="false">This affects only clones, not the original sprite.</comment></block></script><script x="20" y="1131.0000000000016"><block s="show"></block></script><script x="20" y="868.9999999999956"><block s="receiveMessage"><l>X is the winner</l></block></script><script x="20" y="817.9999999999962"><block s="receiveMessage"><l>tie game</l></block></script></scripts></sprite><sprite name="Sprite" idx="2" x="0" y="80" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="1" color="0,221.85,75.42899999999997,1" pen="tip" id="162"><costumes><list id="163"><item><costume name="alonzo" center-x="45" center-y="60" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFoAAAB4CAYAAAByzOU/AAAAAXNSR0IArs4c6QAAF9NJREFUeAHtXX1sHMd1nz1S1omSTNqSY6mWKNqxbKWO0jNbxIqtRme0FSInQOggKWQVhU6J/oiBJJbb1G1QuKYbNE3bBKHtAvEfKnT6o47ygZhKW1tVkObYyokUFDQdOwgdOQ4pybUskzQpKxQVkdy+3+y+vbdzu3e7d3smeeID7mZ2vnb2t2/evHnzsZaKSbktbR1KNXeolDWe/9GbAzGzX7HJrShP7oDb1E1pu+jXKvJMKEvllT3Tkz8+PiTCF70GAk3Gdcll7gPX7lMqdYgi7qBf2kiA6y0Uvy+zbrk1cGayYMQvXroIlOXo3JZVeUq3W6K1bFmTar8hrU69NqUuXpyRUeS3X1Dp2Wy+MD5uRFzxl6FAmyCvunaJ6vrQu9TWO9o80I6dGFe9R86p0bHLXhh5JlQqlV2U3xISRRI2gLS4sK2vcdStNy9Xn9u7XrUQN5s0SVz91HfPqud+4mPiRbANoEqAzt15XUbNzj7P6daTmPirz3YEgsxp4IK7/+Wp12TQItgCjVKgt6wqUPw2pIE8/sojGzXIvc+eU8eIayEmAP4m4vLt2VVqNYkUpsFXfq0e339ayu5FsF1wfECTXM5R+AEG7i+JkwHo/n99zRQNnERBrOz9kxs8wNFJfvmJoUWwPYQcj0/oZta19FKw7u3uen+b5thyIKMIcPj3+0Z1aZs2LletVzerze9ZoU70n1fT0zbC08q278u0rzgycHryrE54Bf55QLvcrFU5iIz7c+vV4CuT6jv/9oaE5aBSM/cqK9VHgWvp18GRL1NapO9830ri7qsWwWZgXNcTHQT0EIVtQPhHP3QdAXa1KQL68sdHs4hnym1ZnSXdOU/XOh/CIUrQeYIWxYiGQf+l8O9yswYL3AwRUCJn0zNdxWyOL398pKDSMxlSEg9z3MvUIaLjBGFgw6C78a2k0RRy2TYtntywK8LRokPKZshV6MSufHVBsHbkj40NBiEyMDQ1NXDm4iEq40aKzyDNqdcuqQ//4WqdHDIbouT5F9/W1/SXVtPWjszNSw8hLwc2uqs5mh7Sa/oBD7xHc25AhC8oPbOProcRhqE5VD0mjCY/tesGviTX+h01lSqIgIb3uhy9HLI6azxtHwFCII/2GuGBl+DOzPqWDookI5PS6h5EEFP7urTWx18avOAGWWvQCqg1RCqfy1morgYaVjcC6QUC9mWSt4+RZvGF/PG3eih8KM6DEXBPUvo25Ona8S4tMmT+d3e0qBFSB0+Tru1S5kqx+oGTEyFpH5EjyqDCH99/SspsJEHLyQelbZQwltE1PY+2j9hWNxeyfdu1ZW0jGEliGC/ogC5DBDSat2agtao2Ows5q2deYE6FDaQcwQoItQ+c7xHUPj1N5oU0lKcmoDUXTjUNECKeDv65ve1luZnRCwCbXlSqt1F17KqB1qNC4kIGGQDuuneNHqTAH4UwoEGeIpHad6kpX7xuHJ9ou9EfikDupqH3AcrhCVroyXL2JWppUPtAsJW4tIk0oGtI7TvCAY3gxgIaMpTUMcjj3fzwbIC6o1OLaA6O5ULfNtS+LaQqDhPYEEsNQZGBduwhKYB8Kz85Or4/v3+DtllzGLswKF2m4XzQ9BenkS7AfvHnF9T5t6c5uItMq4cbxbRaUY/WnRPkpq0+ygjAvX3zSm3wl0BiOqv/xfM+HRkc30lpnQFMcTZGlsV+zD9+/tGT/kmD9ExHI8yqlwXanT8EF3u2EACHDkzKYzR7TBDAchdGQfmC0paaVhtjCUOo6NCiwrafJTDaGBDYmrWoEDYMAPPFr/1KnT13iZO5LgGkrGV0oXs7WANhwYMljztAI4O+hLWvdWWzaBXWGjWdWrvQbSKBQOc+sKqHnvrvJRCYDMCIToqKfgLOmIwlbMlWkp4hsypsJRe/jE6NyrmbfhpwgA15DMDDCC9i8uKsenX4IidZ8DaREtGhQbbVA/yE6PAwCIHOKylgeQGiA20WrggqULxWTSBGeHYdmcKokWwiPo52Z1o8ToY94uE/u6mE+zCD8o2nz0p8JoiVd4SZVKE5YHIWk7SUKQ0x8vobl1QllRCTvIYmcvdCneT1ONpdMTpAQGiuMxfOoMPr/+l5dZRmvKtdAua+SAx0NH2WWgo0knKE+/7NP/7Sr4momUwtq1e1JjXVBPHYQb/8O2E5LAINueyKDNYQRsZ+owcSmC0xwHWxQYc32xXnoUk09bKqGFWEJK2J5LZcSwxFw30my34w/+MxAF83KgItVihFuBtEBa2JHumOkNaXxGw5WD+CTrYSlfYJ9gv542OZSvnMeHrRXfSinzbCJ6gDr6u+XjQqWSrCGyUOprevKxUCciVTp8v9+/hBMREM8VCJoLffZxigSBTlK+ULiM8GhLWqqaaugPDEgjyORonOOg2VJTAz9NbbSFUbULY1TlEF6sIGyo3QTM2C8h6mnQD7wsQKgTRE5eqBUFSupvSly9NIncz/eNR7cUhTjui+BYrfhjToh7xpNaovlVM3sH1A4+bVUAnIxUJIxCgCezRfDHJ8Zsf4T4/cQtpN+SE6l1GL2kf3tbkcrC38hyeG+FJRPRPBwytQeIqiQwTG9s7a4AStrRh5EXbABdUX5YI/zIHHTrzF3opu4FQYZG8FMsUaFnBinMDktmi+TNRNBmhlZ7lWsEuDU6BRCAoEm+K7Oc3RvjH2VnR5dkaCRKIur1tW2dzNHRwNcwIIYAvKCn+i3oSAtgpcK6hiqHzJnKBSPSVApGd6KR/Ei9aToVlEJYCNEat4oZWXm1mzGS6/ZZnz6L4RL/qmOlFCQNtDXD9eocTr7kqAwI4Cl3Tniu1zLmGhexzie4g8pD2kwtf22ak2TssA+wxctrOkjdMk6SYDtMOZul7oxcHVIAbCANs/AUt7FHVi+oOZNYqqx+nh4h6ly830qE8mc/1FEcdGLUN0bKjX5HAiQLuceZifTIoAAIGNRoI2SK5z1D+MMB2K0ylyHujYf7TNt8Rht2uB5CTKBdBrTatXFTtB3xqTqWYvjZc5AU8iQOt62KqX62OKAHBNKddRE/fEiOVxtZmXy6zk7vrYGj3r46UjcwJrO1qbcBZVas0ILUxysk+tFHLcKysBT2JAu+paaMcGrisBG4tm9M7cmQI/C2wqLHo4LKobqPZpu4b9Q2nbwEoqSSyvnTCrQ8Yl5U8MaKdC5TmzFGzSvfV+xqZfyQeClbAaYrXPJwqk8YgKhYjB/KWk9nWYCHKpTh1iVUCjyRebPdcQ7nSer8I6NoAN86joIDmL52JbR7UEsMHZZvnQm6HfQ8SY5OdoZ3hupqn1OtaQU4M7Owt5qm0F5NLIzsqTHaSH7SAkFwscDyNQ2Do8zHgfLYx6excdudmiZWdYHio3MrH9HMA7U2fFzi+okM8/+ouiKdhS95Ldw+tzgtLHDYsHtLAlGzci2UxigwB3rWAHEC83Dhnp592lb5tfTENVlIeJJzpg0Qsm6s3tRwjkIbLadQUnmd+hPnFlJ/8M8YC2bK85oaljZtxnb4BhSSy02XRzy/xGV9TOqOsG0wAlklbljQe0rddB6xthQxBGV18h8yZksdn54DoJWVvVU1WRCbLcp61YqURbps/EVql+A2emxrHBh9JlkBb6LsDE3hRsd9OLY2gk2Ln5aurd1+rtypXKnE/xly/bytvMZFmXaF3KoaTqFwto3DSzbukALRjfQ970RVrkAkKvDoKBBn4ADw5ZaLRkSUoVnvPs4ptoL+RjSe2FjCc6CDnHNlEcmMCODFWtEQj6tK/PudSUTeq5YgOtbww1TmzexAk0jUIQex4lqH1UBbQ7OOnmCkWdyeb089nF6QyCEusQqwIaFXGMSEXzJhT+RiBY9YQG1arXgSTwYFUD7dw7tY/rANsGz65w2EJ1jWVq2SSeoyag3c34fVwR2C4agYxR4gPBBrR4T1oT0M6trG6+JdY+x52K4rzzyQVH+7QP2rBa6xRXzUA7XF2U1Y3C1ZhhF7Sh1v2PiYwqaLSI2VjdQ0/QrqqFNPQWYPq82OKBQZc3UqRxGU6AoNHioC9hxIuaOVrfR8yCYyqqEcQHngsMg91nHmGRTpXHFCUCtKtXe50i1lU3ChmzNa3VipBEgNagYuWpS4Mnw7fBcZqF4kJ8+Parkxm4mjV6yQEtJjV9k50LBdEy9cQ8J6/Vc5LZ3WWSB0YlArQrtzr4DsZkJwcvaNeY1N3Ga0aiPlQiQKupZowQN+CmGL76FqRErck8TwfmwYJ5Qd3CX9FbM9DOqInmC10yF6dweCO4xnoQmu7CSZbRqCagtciYncnzrTCaMirDUQ3hoqX6uNqy0ZIjUU1Ak6rTLZdaGaOpSBVYaIl8gzGtgbR1RHmGqoHWzUZsZcaMeCN2giaIeMZqJnGrBpo2cvZwJXDjRhYZ/JzsbpWdoq1yHF7OrQpoR7Up7jzF6OlKIp8ZlRZRRhmWVwU0gdrNwKJzuBJEBj8vXHSKPvERYRI3NtDu1I7WmXHTK0lk4HmZ5EJ2Wnqc4fAwtzksokx4juPAzVEGJ5ji8lWMC4jqNq1Q6prfp99W+h4a+X/9ilLj/6PU+YGoJVROdzVh1Ub3WH6zUpdoVh9lj+AAnmDyt2I7G5yqGBofaLG2zqfquGUCVBiVcN4/VjLJzzyhuUEFjPJyvCq20INv/JJSS6/XQadOvqRaVrxfrd70cQLiiFKveseLeFliefASb/qC8xIp42D/c/S/UrWs/Ihqfy/dA+VP0os1SO6BsZX6XchpXrpsJNWXVlBgWJgzEsI2BaWnerDuDoQjf7BKH64EVkcaf7DvRta3AULmW0o1LVf9//2MOnroSfXy8z/SJd56+51q+85Pq85b6GDCU08Yd4lxufHvNMh4gY8/9Kdq9OxpL/Nd9+xUex96WKmXPkknPV/wwtmz54GfsRfuMH26qivs01VxOTrLJd+4fpn+dBM291QCF5zMm9tjTQqs+YQGefLChNr/xc+oixeKWy4A+Mjrp1Xn088r9ca3nebOlYvqorVAHBGZICPsuWcOqdVr21XX9h1KnaV7lKcN+vsFd14X+J2weJ2h2Fn6vy+c199fMUGGUQmyGxuDsJH+wGO3+eRzLLHhgtDf94wPZH5ecN+x//gGtfTbOSieC7lPBHEhOVkWcvSbT3ovQ4aH+EN370bmaG08mpndRgvNSwjgYuYY+qWxJkKv9eAP4iCjb8lVSUlGADiOCGIjjNDkVWZjWHSk8JHXT4Wmk60oNBFFAAOX6XD2Ry8FZWX6SBxNsrlbf6jM8q/4h0gA5+LELwxaTJAhJnBcGxPSw4gemd6mnp9o64dx5lUw6ThoCTVQ+y2bQ3OvWrM+MM5c2OmbhaE9PuYKp7JAoyd1Nv8UzaC4K+9w+tuH3q2BC1qii4rgXA0WLXjjsUeQrvrW+cF7VNADr994m2rf+F6l3iY5XQ29RSoiEcpA5xpEux6kzvKtYyVRci8kM5AxkdsjMzXJC+nXw0q929S6g8NR4P25dXqQwnupOU66ABkfzOEOEHG7//i39GedZLqKfqhV13fRcuyr1NaP3KeWXJWmDvAUqXetqmvvQ2rXg19SS8b+Xamx/6pYVGCCy3R0xdK1SpGI6tx2j5oYPadOQxQR4cXuffifVefvkWY1TFqN7Z9wHjw56Z02ufb6pZrhcHzcD2l9tfsNm7bM+mUTtDzhOMoLkLgIpmN/jB1Y6OCicGQQyLDsVT2CNPRop3bu/9nv1KbaoRhDj/aVjxd98q8DNRosVea+Rz4fzgQ8fORNLmaYFoN24CKQownkHtr0s5tT1wIy8mKbRdUErtPqG30cDbosfhioQHeGWyuBU9Ei0B9M0+w9riEqzn1PqaGvBurPuOW36WNtfATz9uxqBa4GYdeDn6udRTclWodjZ7Yf0Lnor1aQo7QCvldZF8PhMkPisnmjRKI/iDikRycvxaLc0YX+CkqB92lYZzF7r68z1HLZ+ZqbrhpkchSggsRF1BcUBYP5lkYedQGMTGXAb0Z1lsr5OVrPZtueZa5akKXMmm8gJVEfedTFdv85Ibp4cLTUqzEG8Tja5eZ9XJEoU1NBnAy9uuqOj28+j10c+sLHh+qBmn8rhldzKU7o/L+sB7S7NqMVKVFAkGXOK4U8YSDHGpDIAheIH99BZ7rtluUlYoPjfGZUOsupCLSyc5yoi9QxU+5wHLtQb2SHgN2zDQ8yqW7MzcABS5TDyD/OsB2OdrcOeLK5EmDmB9fR8VVqAWEVqkd4LAthxApgJCj0Y53r5KuT+iiMoCKkvRrxDkc7JzHq9ACtHDdDRrGijgxNTXScgXGiiy5ojv4wYPgLOnsDI9OkAIeYhDmByVbWCPt7aXASdJ9TZ6Y4CdwhV3QUp2LKTTnhrRpfs1czMzbZpV+Xhc6pH6oV+hjsEgPg2JaHCYlaCC9Nigxr1voYleedHyVfAt/HD741pEeGmXXLSNugr0MQQQT45YuTFSDjhuJbtDS1oZYg9uy53+hWgD3gc03YEoEj7VFfgIN+5Cf9E7rZY3oN34nBnm8eyVWqL16U2F6B5HvyJ0a+R9ssBsm/EwEYIQJY7INH2bj3U3Q0v8DqoAt0y9eRAYTlqUgsiUFmSxzFTdC0zQdpvIqx9Sak/SV9YQJGFTzoXBNEH/oZcPeS5pTutHBAAIAHU+C7AXffdU3Jc8p6Q1x89cmSD1weJNtFN9JhLwu+6UXeLbjGCz1BLxStB99SFyBPUJ6d2qgkj2I3z90PABmmKH3mkGPhaxqi+2i1EIscYTotJ+NRqbkgcBy2fOCzI5jl8alfRoXwzOBkqVVREoCcM5LiU995CvPsQmY8Y8UcjbeSQSJ8TQIiAJyJju/rB894NmW3EHwC5BD8+oO+65bDDJjDNbgG3IKma7YKxM8l4eVDJEJklGt12L63/6n/88lkqncgyHge4uxefDeXvJhPSyPMpWHiyHsJqyO4djgaJyrOzkaxngPkvFuQ57ir3w9wAMb/OG13PnI219F0wfHgYnSiBgU+s5HGOZLTO25zesg8CV4DjUwmWEZBE/RKcuWOKDOb0EIBGwBDJfSsbcUHB0fmIn0TvZgn1KdFB2KpCQxQE+gjL8C/kX5oBlBhvklG2Z30+WqIiFBymlDxGCD0xBAjm99Di1Go2c43wkKf3mff1OqqIYuBAD5DtTN/bGwwqXoD1ETJ5GzotBAj5TofswLccUGmxlqeYBZkXAPc/p/SYh9S8aReLJIRo1ndSXGxKNeR0TIgCb/8RjjKw3mgxq6mktsAXHREJgjQZDCIwovC7AXcKC0EoI6MOpoG9OcA2SvrUDeA+SaJczQX7E6H6ZmacsvAoK8CYNOOwOWEuXgB5sAKapnQ9cOycjjEYi+NB3rClnFxwiTc+o0ubAzrnfcYtmgmRF/Vz4UlDeW4EE0/pPmXw2WYIgtUrd5yHXu5AqqNqx/Q4jhhPq5NVhI6OoapQRy48aYWLdeRHiIAIy5xTJosprLfVv9JwB6iDr1gqlyVMyeXoi5Au6tOdS2dJq5NIl6tAbJpnPIiyZNKFSUa5DPSh9E9f7Babf7tFTqaO0/flL9lHafOLR+W/50K9xs1Erur3cFFmXI0AGTS0en7WyGETjJAxz3NyZ/5wYjuHPFCWEPx3VMszOQ8c+HWCWirgx9Gzp1BJhucDONUVtmpAU4PVx5DIWec3TTUic2QQcsxUyIMVkWUzeQzuoefEMzJ3xG3TkCX1h2cCUAEaZDR45t6q+zk5Iyzkxef9xsf0i9I2IQl2IbOvk3cc868dQca1jIQ7Aii4/NADntycCg6Qgm6k3Y6D1erZGgNBtgwU5p6tjPDTynnkOoONADDwxuq2r4A3bVP4oB9MCWdID6FB252KQjsJ2jKCZ0hbC0eecYeL+Qd99QH6JTVy08CgMHNgmByzItrxytOsEEAvm1b0gmKb71wfhNshGPwU2K/4Axz5NYFaIdbi0e0+USGmukOfFbxKSfEl4oM6vzEIVmyjCLYxXv64o+PFOT1XPjrArR+kFRTjlyMxCSFfrHTFQkHZWK/nzrBwnioQq3BTs9maTT6KOXD8BoEd4/2zfGfVc/7O1NdzRm6R1aROHE4PfyO7tQYxI6hKcT7kG/xvqUG+PC71zemrkBXW3V3EiJLQ+c2mgAu1PtT0tXWM06+/wdSKgKR/mDpxQAAAABJRU5ErkJggg==" id="164"/></item></list></costumes><sounds><list struct="atomic" id="165"></list></sounds><blocks></blocks><variables></variables><scripts><script x="20" y="20"><block s="receiveMessage"><l>X is the winner</l></block><block s="show"></block><block s="doSayFor"><l>X won the game!</l><l>2</l></block></script><script x="76" y="130"><block s="receiveMessage"><l>O is the winner</l></block><block s="show"></block><block s="doSayFor"><l>O won the game!</l><l>2</l></block></script><script x="344" y="102"><block s="receiveMessage"><l>tie game</l></block><block s="show"></block><block s="doSayFor"><l>tie game!</l><l>2</l></block></script><script x="51" y="250"><block s="receiveGo"></block><block s="hide"></block><block s="gotoXY"><l>0</l><l>80</l></block></script></scripts></sprite><watcher var="X&apos;s turn?" style="normal" x="5" y="5" color="243,118,29" hidden="true"/><watcher var="board" style="normal" x="6" y="11" color="243,118,29" extX="80" extY="70"/><watcher scope="Square" var="square number" style="normal" x="10" y="218.000002" color="243,118,29" hidden="true"/><watcher var="counter" style="normal" x="10" y="239.000004" color="243,118,29" hidden="true"/></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="label %&apos;text&apos; of size %&apos;size&apos;" type="command" category="pen"><comment x="0" y="0" w="90" collapsed="false">LABEL will stamp text on the stage at the given font size. The direction of the text is the direction the sprite is facing, and color will match the pen color.</comment><header></header><code></code><translations></translations><inputs><input type="%txt">Hello!</input><input type="%n">12</input></inputs><script><block s="doRun"><block s="reportJSFunction"><list><l>text</l><l>size</l></list><l>var stage = this.parentThatIsA(StageMorph),&#xD;    context = stage.penTrails().getContext(&apos;2d&apos;),&#xD;    rotation = radians(this.direction() - 90),&#xD;    trans = new Point(&#xD;      this.center().x - stage.left(),&#xD;      this.center().y - stage.top()&#xD;    ),&#xD;    isWarped = this.Warped,&#xD;    len,&#xD;    pos;&#xD;&#xD;if (isWarped) {endWarp(); }&#xD;context.save();&#xD;context.font = size + &apos;px monospace&apos;;&#xD;context.textAlign = &apos;left&apos;;&#xD;context.textBaseline = &apos;alphabetic&apos;;&#xD;context.fillStyle = this.color.toString();&#xD;len = context.measureText(text).width;&#xD;trans = trans.multiplyBy(1 / stage.scale);&#xD;context.translate(trans.x, trans.y);&#xD;context.rotate(rotation);&#xD;context.fillText(text, 0, 0);&#xD;context.translate(-trans.x, -trans.y);&#xD;context.restore();&#xD;pos = new Point(&#xD;  len * Math.sin(radians(this.direction())),&#xD;  len * Math.cos(radians(this.direction())));&#xD;pos = pos.add(new Point(this.xPosition(), this.yPosition()));&#xD;this.gotoXY(pos.x, pos.y, false);&#xD;this.changed();&#xD;if (isWarped) {this.startWarp(); }&#xD;stage.changed();</l></block><list><block var="text"/><block var="size"/></list></block></script></block-definition><block-definition s="map %&apos;function&apos; over %&apos;lists&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%repRing"></input><input type="%mult%l"></input></inputs><script><block s="doWarp"><script><block s="doDeclareVariables"><list><l>mapone</l><l>mapmany</l></list></block><block s="doSetVar"><l>mapone</l><block s="reifyScript"><script><block s="doIf"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doReport"><block s="reportCONS"><block s="evaluate"><block var="function"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><block s="evaluate"><block var="mapone"/><list><block s="reportCDR"><block var="data"/></block></list></block></block></block></script><list><l>data</l></list></block></block><block s="doSetVar"><l>mapmany</l><block s="reifyScript"><script><block s="doIf"><custom-block s="empty? %l"><block s="reportListItem"><l>1</l><block var="data lists"/></block></custom-block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doReport"><block s="reportCONS"><block s="evaluate"><block var="function"/><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><block s="reportListItem"><l>1</l><l/></block></autolambda><list></list></block><list><block var="data lists"/></list></custom-block></block><block s="evaluate"><block var="mapmany"/><list><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><block s="reportCDR"><l/></block></autolambda><list></list></block><list><block var="data lists"/></list></custom-block></list></block></block></block></script><list><l>data lists</l></list></block></block><block s="doIfElse"><custom-block s="empty? %l"><block s="reportCDR"><block var="lists"/></block></custom-block><script><block s="doReport"><block s="evaluate"><block var="mapone"/><list><block s="reportListItem"><l>1</l><block var="lists"/></block></list></block></block></script><script><block s="doReport"><block s="evaluate"><block var="mapmany"/><list><block var="lists"/></list></block></block></script></block></script></block></script></block-definition><block-definition s="empty? %&apos;data&apos;" type="predicate" category="lists"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportEquals"><block var="data"/><block s="reportNewList"><list></list></block></block></block></script></block-definition><block-definition s="keep items such that %&apos;pred&apos; from %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%predRing"></input><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doIf"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doIfElse"><block s="evaluate"><block var="pred"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><script><block s="doReport"><block s="reportCONS"><block s="reportListItem"><l>1</l><block var="data"/></block><custom-block s="keep items such that %predRing from %l"><block var="pred"/><block s="reportCDR"><block var="data"/></block></custom-block></block></block></script><script><block s="doReport"><custom-block s="keep items such that %predRing from %l"><block var="pred"/><block s="reportCDR"><block var="data"/></block></custom-block></block></script></block></script></block></script></block-definition><block-definition s="combine with %&apos;function&apos; items of %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%repRing"></input><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doIf"><custom-block s="empty? %l"><block s="reportCDR"><block var="data"/></block></custom-block><script><block s="doReport"><block s="reportListItem"><l>1</l><block var="data"/></block></block></script></block><block s="doReport"><block s="evaluate"><block var="function"/><list><block s="reportListItem"><l>1</l><block var="data"/></block><custom-block s="combine with %repRing items of %l"><block var="function"/><block s="reportCDR"><block var="data"/></block></custom-block></list></block></block></script></block></script></block-definition><block-definition s="if %&apos;test&apos; then %&apos;true&apos; else %&apos;false&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%b"></input><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doIfElse"><block var="test"/><script><block s="doReport"><block s="evaluate"><block var="true"/><list></list></block></block></script><script><block s="doReport"><block s="evaluate"><block var="false"/><list></list></block></block></script></block></script></block-definition><block-definition s="for %&apos;i&apos; = %&apos;start&apos; to %&apos;end&apos; %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%upvar"></input><input type="%n">1</input><input type="%n">10</input><input type="%cs"></input></inputs><script><block s="doDeclareVariables"><list><l>step</l><l>tester</l></list></block><block s="doIfElse"><block s="reportGreaterThan"><block var="start"/><block var="end"/></block><script><block s="doSetVar"><l>step</l><l>-1</l></block><block s="doSetVar"><l>tester</l><block s="reifyReporter"><autolambda><block s="reportLessThan"><block var="i"/><block var="end"/></block></autolambda><list></list></block></block></script><script><block s="doSetVar"><l>step</l><l>1</l></block><block s="doSetVar"><l>tester</l><block s="reifyReporter"><autolambda><block s="reportGreaterThan"><block var="i"/><block var="end"/></block></autolambda><list></list></block></block></script></block><block s="doSetVar"><l>i</l><block var="start"/></block><block s="doUntil"><block s="evaluate"><block var="tester"/><list></list></block><script><block s="doRun"><block var="action"/><list></list></block><block s="doChangeVar"><l>i</l><block var="step"/></block></script></block></script></block-definition><block-definition s="join words %&apos;words&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%mult%txt"></input></inputs><script><block s="doWarp"><script><block s="doIf"><custom-block s="empty? %l"><block s="reportCDR"><block var="words"/></block></custom-block><script><block s="doReport"><block s="reportListItem"><l>1</l><block var="words"/></block></block></script></block><block s="doIf"><block s="reportEquals"><l></l><block s="reportListItem"><l>1</l><block var="words"/></block></block><script><block s="doReport"><custom-block s="join words %mult%txt"><block s="reportCDR"><block var="words"/></block></custom-block></block></script></block><block s="doIf"><block s="reportEquals"><l></l><block s="reportListItem"><l>2</l><block var="words"/></block></block><script><block s="doReport"><custom-block s="join words %mult%txt"><block s="reportCONS"><block s="reportListItem"><l>1</l><block var="words"/></block><block s="reportCDR"><block s="reportCDR"><block var="words"/></block></block></block></custom-block></block></script></block><block s="doReport"><block s="reportJoinWords"><list><block s="reportListItem"><l>1</l><block var="words"/></block><l> </l><custom-block s="join words %mult%txt"><block s="reportCDR"><block var="words"/></block></custom-block></list></block></block></script></block></script><scripts><script x="229.00000300000002" y="196.77778077777774"><block s="reportJoinWords"><list><l></l><l></l></list></block></script></scripts></block-definition><block-definition s="list $arrowRight sentence %&apos;data&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doReport"><custom-block s="join words %mult%txt"><block var="data"/></custom-block></block></script></block></script></block-definition><block-definition s="sentence $arrowRight list %&apos;text&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%txt"></input></inputs><script><block s="doWarp"><script><block s="doReport"><block s="reportTextSplit"><block var="text"/><l><option>whitespace</option></l></block></block></script></block></script></block-definition><block-definition s="catch %&apos;tag&apos; %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%upvar"></input><input type="%cs"></input></inputs><script><block s="doCallCC"><block s="reifyScript"><script><block s="doSetVar"><l>tag</l><block var="cont"/></block><block s="doRun"><block var="action"/><list></list></block></script><list><l>cont</l></list></block></block><custom-block s="ignore %s"><l>3</l></custom-block></script></block-definition><block-definition s="throw %&apos;cont&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s">catchtag</input></inputs><script><block s="doRun"><block var="cont"/><list></list></block></script></block-definition><block-definition s="catch %&apos;tag&apos; %&apos;value&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%upvar"></input><input type="%anyUE"></input></inputs><script><block s="doCallCC"><block s="reifyScript"><script><block s="doSetVar"><l>tag</l><block var="cont"/></block><block s="doReport"><block s="evaluate"><block var="value"/><list></list></block></block></script><list><l>cont</l></list></block></block></script></block-definition><block-definition s="throw %&apos;tag&apos; %&apos;value&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s">catchtag</input><input type="%s"></input></inputs><script><block s="doRun"><block var="tag"/><list><block var="value"/></list></block></script></block-definition><block-definition s="for each %&apos;item&apos; of %&apos;data&apos; %&apos;action&apos;" type="command" category="lists"><header></header><code></code><translations></translations><inputs><input type="%upvar"></input><input type="%l"></input><input type="%cs"></input></inputs><script><block s="doUntil"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doSetVar"><l>item</l><block s="reportListItem"><l>1</l><block var="data"/></block></block><block s="doRun"><block var="action"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><block s="doSetVar"><l>data</l><block s="reportCDR"><block var="data"/></block></block></script></block></script></block-definition><block-definition s="if %&apos;test&apos; do %&apos;action&apos; and pause all $pause-1-255-220-0" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%boolUE"></input><input type="%cs"></input></inputs><script><block s="doDeclareVariables"><list><l>breakpoint</l></list></block><block s="doIf"><block s="evaluate"><block var="test"/><list></list></block><script><block s="doSetVar"><l>breakpoint</l><block var="test"/></block><block s="doShowVar"><l>breakpoint</l></block><block s="doRun"><block var="action"/><list></list></block><block s="doPauseAll"></block><block s="doHideVar"><l></l></block></script></block></script></block-definition><block-definition s="word $arrowRight list %&apos;word&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%txt"></input></inputs><script><block s="doWarp"><script><block s="doReport"><block s="reportTextSplit"><block var="word"/><l><option>letter</option></l></block></block></script></block></script></block-definition><block-definition s="ignore %&apos;x&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs></block-definition><block-definition s="tell %&apos;sprite&apos; to %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s">Sprite</input><input type="%cs"></input></inputs><script><block s="doRun"><block s="reportAttributeOf"><block var="action"/><block var="sprite"/></block><list></list></block></script></block-definition><block-definition s="ask %&apos;sprite&apos; for %&apos;expression&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%s">Sprite</input><input type="%repRing"></input></inputs><script><block s="doReport"><block s="evaluate"><block s="reportAttributeOf"><block var="expression"/><block var="sprite"/></block><list></list></block></block></script></block-definition><block-definition s="list $arrowRight word %&apos;list&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doReport"><block s="reportJoinWords"><block var="list"/></block></block></script></block></script></block-definition><block-definition s="makeBoard" type="command" category="control"><header></header><code></code><translations></translations><inputs></inputs><script><block s="bubble"><l>You have to create the makeBoard block!</l></block></script></block-definition><block-definition s="makeboard" type="command" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doSetVar"><l>square number</l><l>0</l></block><block s="show"></block><block s="doFor"><l>row</l><l>1</l><l>3</l><script><custom-block s="for %upvar = %n to %n %cs"><l>column</l><l>1</l><l>3</l><script><block s="doChangeVar"><l>square number</l><l>1</l></block><block s="createClone"><l><option>myself</option></l></block><block s="changeXPosition"><l>50</l></block></script></custom-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="my" type="reporter" category="sensing"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><l></l></block></script></block-definition><block-definition s="Tic-Tac-Toe Wins" 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"></input></inputs><script><block s="doReport"><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><block s="reportListItem"><l></l><block var="board"/></block></autolambda><list></list></block><list><block var="list"/></list></custom-block></block></script></block-definition><block-definition s="won? %&apos;winning player&apos;" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><custom-block s="for each %upvar of %l %cs"><l>item</l><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><custom-block s="status of triple %l"><l/></custom-block></autolambda><list></list></block><list><custom-block s="Tic-Tac-Toe Wins"></custom-block></list></custom-block><script><block s="doIfElse"><block s="reportListContainsItem"><block var="item"/><l>empty</l></block><script></script><script><block s="doIfElse"><block s="reportAnd"><block s="reportListContainsItem"><block var="item"/><l>X</l></block><block s="reportListContainsItem"><block var="item"/><l>O</l></block></block><script></script><script><block s="doIf"><block s="reportListContainsItem"><block var="item"/><block var="winning player"/></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block></script></block></script></block></script></custom-block><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block-definition></blocks><variables><variable name="X&apos;s turn?"><bool>true</bool></variable><variable name="board"><list struct="atomic" id="948">empty,empty,empty,empty,empty,empty,empty,empty,empty</list></variable><variable name="counter"><l>0</l></variable></variables></project><media name="Unit3Lab2p2-TicTacToeWins" app="Snap! 5.4, http://snap.berkeley.edu" version="1"></media></snapdata>