<snapdata remixID="9258108"><project name='U2L4-TicTacToe' app='Snap! 5.4, http://snap.berkeley.edu' version='1'>
  <notes>Press the green flag twice to play the game to reset the game. If you press it once you can see how the O or X won.</notes>
  <thumbnail>data:image/png;base64,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</thumbnail>
  <stage inheritance='false' penlog='false' volume='100' height='360' tempo='60' lines='round' width='480' sublistIDs='false' name='Stage' threadsafe='false' codify='false' id='1' color='255,255,255,1' scheduled='false' pan='0' ternary='true' costume='0'>
    <pentrails>data:image/png;base64,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</pentrails>
    <costumes>
      <list id='2' struct='atomic'/>
    </costumes>
    <sounds>
      <list id='3' struct='atomic'/>
    </sounds>
    <variables/>
    <blocks/>
    <scripts/>
    <sprites>
      <sprite x='150' pen='tip' id='8' y='-100' name='Square' idx='1' volume='100' rotation='1' scale='1' heading='90' costume='1' color='80,80,80,1' pan='0' draggable='false'>
        <costumes>
          <list id='9'>
            <item>
              <costume center-x='26' image='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAAAx0lEQVRoQ+2awQ2CUBAFlybwjJVYi+RblNFauEIMBzsyMbGAd5ngz3CfPHaGI0N19gxVdamqpYe7pum8fw+6zm15Pu5/fdO6verW2tuDjprRQkct83svC1kINuAnBwuP5ywUK4MBC8HC4zkLxcpgwEKw8HjOQrEyGLAQLDyes1CsDAYsBAuP5ywUK4MBC8HC4zkLxcpgwEKw8HjOQrEyGLAQLDyes1CsDAYsBAuP5ywUK4MBC8HC4zkLxcpgoO9CvfzROI6n7QMbcJ2IL5z4zQAAAABJRU5ErkJggg==' center-y='26' name='Empty' id='10'/>
            </item>
            <item>
              <costume center-x='26' image='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAACBUlEQVRoQ+3aO0/CUBQH8MMGIRFnooaRL0BgdCIGqQnxASgQjMjqc3A04maM38KwOTqqm8YEFx+rr0QdcSMupiQ1olTOvfec3hZha9LH/d1/e8M/rQ8AIoaR2QoG/X7w+K/V+rj2AcB4LBY/LpUXPQ16e32Bq0bjoQ3KZvNH9frhsJcDOr+4hN1abQBybYj/M6HHp2cYGx1xVSp2Y0IltFSpQjgchtrOtitQN7d3YKTTsLd/ANOZqY4xoUDN5jtUlqsQjUa1oyzMQqHYdSwokDkFbkD1wpjjRIN0ozAYYZAuFBYjBXIaJYKRBjmFEsUogbhRMhhlEBdKFkMCokapYMhAVChVDClIFUWBIQfJoqgwLCBRFCWGDYRFUWNYQb1QHBh2kB2KC+MI6Ccql8u2y5ldn+loaxIbQvVB4vxfh5h9qlAswdnpCaysrrEVRcdA5m02mUpBIBCAmdk5b4O+PzObG+usdZ49oW4LAGedZwX9tZpxodhAmKWZA8UCwmCs5Y8aRQ4SwXCgSEEyGGoUGUgFQ4kiAVFgqFDKIEoMBUoJxIFRRUmDODEqKCmQExhZlDDISYwMSgikAyOKQoN0YkRQKJAbMFgUCpRMTkA8kWBrmaLV3vpDm8vPy700duNrfRMVCg39mgtUQqIzqHP/AUjn7GOu3d8J9dsHgBEAKGNi9cA+958uiHxCYDA7+gAAAABJRU5ErkJggg==' center-y='26' name='X' id='11'/>
            </item>
            <item>
              <costume center-x='26' image='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAAEYElEQVRoQ+2aS0wTURSG/64VcKULBAMK1MfCFo1uFEFDjOArahR8xKgFJS4gRuOGUsrGIBUXxgfFxKhA8REfYGKIiuhCEGk1EURJJIKK7njoGnPG3KSlM507M3cKIpM0XfTeM+c7/5lz7z1TC6bZZQGwDkDrdOBKSkrukoAOHXa0Xq2t+aeZ2js6UeBwvJsBmqoyzijEq0zLk2fw+wPo+/QRrc+eor//c9jUnbt2Iz4+HsttdmRlZiAxYT6vecVxQhUaGPwKr7cWdTdvIH3FSuljt9tgTUuVdZZu3vvxE94G/Hj44L40fk9ePnZs36IbTAhQMEjB0SLk5+3WFe279x7C11CPkeFhFB4r0gVmGOja9Tq4XU4QyLFCB+LiYnVHl02kdK2qrERCYiLKypyagqMbaGRkFGWucvR0d8NdUYHVq1YaBgk2QPYvXfGi5vJFXK7xIntDFpd9XUB0syOOAsTGxuKcp0qIKkreUhqePFGCs55qrhTUDMRgrFYrKtwurqgZHdTd8wGbc3O5oDQDHT5SgJiYGJyv9hj1U9N8glq2dAletb+OmN6agC5cvIK2562o9daYmmZq6RcIBBTvzw3EIvS+uwdLlyzWFF2Rg4tLTkjmlDKEG4hSzWZPx/GiQpH+abZFz7DNZkN9g0829biAaFB+3h5EklqzZwYmUOoH/F2QO+pwAZHMi1JSJ10dFgOmUlNzc1j6qwLRtmZBYgKGh0cmpRAoCXmm0oPfv8bClg5VINra0OYx2mVaLSOpSJUUl6Cl5XHIUFUgSrc1azO4Vmk1J0T/npy8EBPTThVIbpJox/Takwu2KpDFYsH4+Ljee5o6j6odXcFLSUQg+tHj8eD2LZ+pjuk1TseMRp8vpHyrAnm9Xtl6r9cJkfPI+Yn+zQCJjLBRW5oVUqr1Rh0RNZ8Ofy9ftIWskf9XlaNIZmdvNKVnIEIlOgFsyskNWfRVFSp1urBwUQoOHtgrwgehNmjRf97WFtIVUgVivbKpthaxVpfmvRxt1efMicOXgUFN/TGhUsgYo8yZNTsGp0/9PcGyS1UhGqg02WynlexHCjIXEJ2J1mVkTKkT688fQ7JtNC4gphJ9R6sXp6QOO3AqPQLcQEwlpeZEtNKPSnVKalrYs6PpGWKDWVt2spoldOzuetMZsS/IrRCDogLR29sb9WYjC6ZcY0RzlZuYTtGG4oUhPzUrNFEpl6vM1E4qnUrPVVWG9Q6UnlndQGSQcpre3zhdbuFbIypC5eVuDA4MoPp8NXfQDAExiZ2lpdLbNofDYfjFFy2aN+oaJFX0vBU0DERQwU5kZq0P2wHzlHRSpL6hUVKcbOgNjhAg5jCB3XvQhEfNTVJ53bJ1m9RCXpFul4YstqZJ3Vc6OI6N/cK370Po6+uTxtJn7779yMnJMaSyUKBgJSjinW/8ksP0X4XR0VHcud0oDUlKSpZUoBdnDFjUO1rTgHjSzIwxM0BmRFWkzemt0HT5R+PcufM6/gCC+YmmYOBoKAAAAABJRU5ErkJggg==' center-y='26' name='O' id='12'/>
            </item>
          </list>
        </costumes>
        <sounds>
          <list id='13' struct='atomic'/>
        </sounds>
        <blocks/>
        <variables>
          <variable name='position number'>
            <l>9</l>
          </variable>
        </variables>
        <scripts>
          <script x='20' y='20'>
            <block s='receiveGo'/>
            <block s='setEffect'>
              <l>
                <option>ghost</option>
              </l>
              <l>100</l>
            </block>
            <block s='gotoXY'>
              <l>0</l>
              <l>0</l>
            </block>
          </script>
          <script x='20' y='116'>
            <block s='receiveOnClone'/>
            <block s='doSwitchToCostume'>
              <l>Empty</l>
            </block>
            <block s='setEffect'>
              <l>
                <option>ghost</option>
              </l>
              <l>0</l>
            </block>
            <block s='doForever'>
              <script>
                <block s='doIfElse'>
                  <block s='reportAnd'>
                    <block s='reportAnd'>
                      <block s='reportTouchingObject'>
                        <l>
                          <option>mouse-pointer</option>
                        </l>
                      </block>
                      <block s='reportMouseDown'/>
                    </block>
                    <block s='reportEquals'>
                      <block var='X&apos;s turn?'/>
                      <block s='reportBoolean'>
                        <l>
                          <bool>true</bool>
                        </l>
                      </block>
                    </block>
                  </block>
                  <script>
                    <block s='doSwitchToCostume'>
                      <l>X</l>
                    </block>
                    <block s='doReplaceInList'>
                      <block var='position number'/>
                      <block var='board'/>
                      <l>X</l>
                    </block>
                    <block s='doSetVar'>
                      <l>X&apos;s turn?</l>
                      <block s='reportBoolean'>
                        <l>
                          <bool>false</bool>
                        </l>
                      </block>
                    </block>
                    <block s='doStamp'/>
                    <block s='doWait'>
                      <l>.5</l>
                    </block>
                    <block s='removeClone'/>
                  </script>
                  <script>
                    <block s='doIf'>
                      <block s='reportAnd'>
                        <block s='reportAnd'>
                          <block s='reportTouchingObject'>
                            <l>
                              <option>mouse-pointer</option>
                            </l>
                          </block>
                          <block s='reportMouseDown'/>
                        </block>
                        <block s='reportEquals'>
                          <block var='X&apos;s turn?'/>
                          <block s='reportBoolean'>
                            <l>
                              <bool>false</bool>
                            </l>
                          </block>
                        </block>
                      </block>
                      <script>
                        <block s='doSwitchToCostume'>
                          <l>O</l>
                        </block>
                        <block s='doReplaceInList'>
                          <block var='position number'/>
                          <block var='board'/>
                          <l>O</l>
                        </block>
                        <block s='doSetVar'>
                          <l>X&apos;s turn?</l>
                          <block s='reportBoolean'>
                            <l>
                              <bool>true</bool>
                            </l>
                          </block>
                        </block>
                        <block s='doStamp'/>
                        <block s='doWait'>
                          <l>.5</l>
                        </block>
                        <block s='removeClone'/>
                      </script>
                    </block>
                  </script>
                </block>
              </script>
            </block>
          </script>
          <script x='20' y='638'>
            <block s='receiveGo'/>
            <block s='removeClone'/>
          </script>
          <script x='20' y='709'>
            <block s='receiveGo'/>
            <block s='doWait'>
              <l>.1</l>
            </block>
            <custom-block s='makeBoard'/>
            <block s='doSetVar'>
              <l>X&apos;s turn?</l>
              <block s='reportBoolean'>
                <l>
                  <bool>true</bool>
                </l>
              </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>
          </script>
          <script x='20' y='852'>
            <block s='receiveGo'/>
            <block s='doForever'>
              <script>
                <custom-block s='for each %upvar of %l %cs'>
                  <l>item</l>
                  <custom-block s='possible winning triplets'/>
                  <script>
                    <block s='doIf'>
                      <block s='reportEquals'>
                        <custom-block s='status of triple %s'>
                          <block var='item'/>
                        </custom-block>
                        <block s='reportNewList'>
                          <list>
                            <l>X</l>
                            <l>X</l>
                            <l>X</l>
                          </list>
                        </block>
                      </block>
                      <script>
                        <block s='doSayFor'>
                          <l>X Wins</l>
                          <l>2</l>
                        </block>
                        <block s='doStopThis'>
                          <l>
                            <option>all</option>
                          </l>
                        </block>
                      </script>
                    </block>
                    <block s='doIf'>
                      <block s='reportEquals'>
                        <custom-block s='status of triple %s'>
                          <block var='item'/>
                        </custom-block>
                        <block s='reportNewList'>
                          <list>
                            <l>O</l>
                            <l>O</l>
                            <l>O</l>
                          </list>
                        </block>
                      </block>
                      <script>
                        <block s='doSayFor'>
                          <l>O Wins</l>
                          <l>2</l>
                        </block>
                        <block s='doStopThis'>
                          <l>
                            <option>all</option>
                          </l>
                        </block>
                      </script>
                    </block>
                  </script>
                </custom-block>
              </script>
            </block>
          </script>
          <script x='20' y='1131'>
            <custom-block s='status of all winning triples'/>
          </script>
        </scripts>
      </sprite>
      <watcher x='5' color='243,118,29' style='normal' y='5' var='X&apos;s turn?'/>
      <watcher x='5' color='243,118,29' style='normal' y='40.000001999999995' var='position number' scope='Square'/>
      <watcher var='board' x='3' color='243,118,29' style='normal' y='94' extX='80' extY='70'/>
    </sprites>
  </stage>
  <hidden/>
  <headers/>
  <code/>
  <blocks>
    <block-definition s='label %&apos;text&apos; of size %&apos;size&apos;' category='pen' type='command'>
      <comment x='0' w='90' collapsed='false' y='0'>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/>
      <code/>
      <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),    context = stage.penTrails().getContext(&apos;2d&apos;),    rotation = radians(this.direction() - 90),    trans = new Point(      this.center().x - stage.left(),      this.center().y - stage.top()    ),    isWarped = this.Warped,    len,    pos;if (isWarped) {endWarp(); }context.save();context.font = size + &apos;px monospace&apos;;context.textAlign = &apos;left&apos;;context.textBaseline = &apos;alphabetic&apos;;context.fillStyle = this.color.toString();len = context.measureText(text).width;trans = trans.multiplyBy(1 / stage.scale);context.translate(trans.x, trans.y);context.rotate(rotation);context.fillText(text, 0, 0);context.translate(-trans.x, -trans.y);context.restore();pos = new Point(  len * Math.sin(radians(this.direction())),  len * Math.cos(radians(this.direction())));pos = pos.add(new Point(this.xPosition(), this.yPosition()));this.gotoXY(pos.x, pos.y, false);this.changed();if (isWarped) {this.startWarp(); }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;' category='lists' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%repRing'/>
        <input type='%mult%l'/>
      </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/>
                        </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/>
                        </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/>
                          </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/>
                            </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;' category='lists' type='predicate'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%l'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportEquals'>
            <block var='data'/>
            <block s='reportNewList'>
              <list/>
            </block>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='keep items such that %&apos;pred&apos; from %&apos;data&apos;' category='lists' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%predRing'/>
        <input type='%l'/>
      </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/>
                  </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;' category='lists' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%repRing'/>
        <input type='%l'/>
      </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;' category='control' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%b'/>
        <input type='%anyUE'/>
        <input type='%anyUE'/>
      </inputs>
      <script>
        <block s='doIfElse'>
          <block var='test'/>
          <script>
            <block s='doReport'>
              <block s='evaluate'>
                <block var='true'/>
                <list/>
              </block>
            </block>
          </script>
          <script>
            <block s='doReport'>
              <block s='evaluate'>
                <block var='false'/>
                <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;' category='control' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%upvar'/>
        <input type='%n'>1</input>
        <input type='%n'>10</input>
        <input type='%cs'/>
      </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/>
              </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/>
              </block>
            </block>
          </script>
        </block>
        <block s='doSetVar'>
          <l>i</l>
          <block var='start'/>
        </block>
        <block s='doUntil'>
          <block s='evaluate'>
            <block var='tester'/>
            <list/>
          </block>
          <script>
            <block s='doRun'>
              <block var='action'/>
              <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;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%mult%txt'/>
      </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/>
                <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/>
                <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/>
                  <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/>
            </list>
          </block>
        </script>
      </scripts>
    </block-definition>
    <block-definition s='list $arrowRight sentence %&apos;data&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%l'/>
      </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;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%txt'/>
      </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;' category='control' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%upvar'/>
        <input type='%cs'/>
      </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/>
              </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;' category='control' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'>catchtag</input>
      </inputs>
      <script>
        <block s='doRun'>
          <block var='cont'/>
          <list/>
        </block>
      </script>
    </block-definition>
    <block-definition s='catch %&apos;tag&apos; %&apos;value&apos;' category='control' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%upvar'/>
        <input type='%anyUE'/>
      </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/>
                </block>
              </block>
            </script>
            <list>
              <l>cont</l>
            </list>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='throw %&apos;tag&apos; %&apos;value&apos;' category='control' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'>catchtag</input>
        <input type='%s'/>
      </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;' category='lists' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%upvar'/>
        <input type='%l'/>
        <input type='%cs'/>
      </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' category='control' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%boolUE'/>
        <input type='%cs'/>
      </inputs>
      <script>
        <block s='doDeclareVariables'>
          <list>
            <l>breakpoint</l>
          </list>
        </block>
        <block s='doIf'>
          <block s='evaluate'>
            <block var='test'/>
            <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/>
            </block>
            <block s='doPauseAll'/>
            <block s='doHideVar'>
              <l/>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='word $arrowRight list %&apos;word&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%txt'/>
      </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 category='control' s='ignore %&apos;x&apos;' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'/>
      </inputs>
    </block-definition>
    <block-definition s='tell %&apos;sprite&apos; to %&apos;action&apos;' category='control' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'>Sprite</input>
        <input type='%cs'/>
      </inputs>
      <script>
        <block s='doRun'>
          <block s='reportAttributeOf'>
            <block var='action'/>
            <block var='sprite'/>
          </block>
          <list/>
        </block>
      </script>
    </block-definition>
    <block-definition s='ask %&apos;sprite&apos; for %&apos;expression&apos;' category='control' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'>Sprite</input>
        <input type='%repRing'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='evaluate'>
            <block s='reportAttributeOf'>
              <block var='expression'/>
              <block var='sprite'/>
            </block>
            <list/>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='list $arrowRight word %&apos;list&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%l'/>
      </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' category='control' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs/>
      <script>
        <block s='doSetVar'>
          <l>position number</l>
          <l>0</l>
        </block>
        <block s='doRepeat'>
          <l>3</l>
          <script>
            <block s='doChangeVar'>
              <l>position number</l>
              <l>1</l>
            </block>
            <block s='createClone'>
              <l>
                <option>myself</option>
              </l>
            </block>
            <block s='changeXPosition'>
              <l>50</l>
            </block>
          </script>
        </block>
        <block s='changeYPosition'>
          <l>-50</l>
        </block>
        <block s='changeXPosition'>
          <l>-150</l>
        </block>
        <block s='doRepeat'>
          <l>3</l>
          <script>
            <block s='doChangeVar'>
              <l>position number</l>
              <l>1</l>
            </block>
            <block s='createClone'>
              <l>
                <option>myself</option>
              </l>
            </block>
            <block s='changeXPosition'>
              <l>50</l>
            </block>
          </script>
        </block>
        <block s='changeYPosition'>
          <l>-50</l>
        </block>
        <block s='changeXPosition'>
          <l>-150</l>
        </block>
        <block s='doRepeat'>
          <l>3</l>
          <script>
            <block s='doChangeVar'>
              <l>position number</l>
              <l>1</l>
            </block>
            <block s='createClone'>
              <l>
                <option>myself</option>
              </l>
            </block>
            <block s='changeXPosition'>
              <l>50</l>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='possible winning triplets' category='other' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <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>3</l>
                  <l>5</l>
                  <l>7</l>
                </list>
              </block>
              <block s='reportNewList'>
                <list>
                  <l>1</l>
                  <l>5</l>
                  <l>9</l>
                </list>
              </block>
            </list>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='status of triple %&apos;triple&apos;' category='other' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportMap'>
            <block s='reifyReporter'>
              <autolambda>
                <block s='reportListItem'>
                  <l/>
                  <block var='board'/>
                </block>
              </autolambda>
              <list/>
            </block>
            <block var='triple'/>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='status of all winning triples' category='other' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs/>
      <script>
        <custom-block s='for each %upvar of %l %cs'>
          <l>item</l>
          <block var='board'/>
          <script>
            <block s='doIf'>
              <block s='reportEquals'>
                <custom-block s='status of triple %s'>
                  <block s='reportNewList'>
                    <list>
                      <l>2</l>
                      <l>5</l>
                      <l>8</l>
                    </list>
                  </block>
                </custom-block>
                <block s='reportNewList'>
                  <list>
                    <l>O</l>
                    <l>O</l>
                    <l>O</l>
                  </list>
                </block>
              </block>
              <script>
                <block s='doReport'>
                  <block var='item'/>
                </block>
              </script>
            </block>
          </script>
        </custom-block>
      </script>
      <scripts>
        <script x='67' y='211.19999999999976'>
          <custom-block s='possible winning triplets'/>
        </script>
      </scripts>
    </block-definition>
  </blocks>
  <variables>
    <variable name='X&apos;s turn?'>
      <bool>false</bool>
    </variable>
    <variable name='board'>
      <list id='913' struct='atomic'>X,empty,empty,O,X,O,empty,empty,X</list>
    </variable>
  </variables>
</project><media name="U2L4-TicTacToe" app="Snap! 5.4, http://snap.berkeley.edu" version="1"></media></snapdata>