<snapdata remixID="8046357"><project name='Ultimate Tic Tac Toe' app='Snap! 5.0, http://snap.berkeley.edu' version='1'>
  <notes>2 Player game of ultimate tic tac toe where your move decides where your opponent has to play. Get a mini 3 in a row to get an X or and O then get another 3 in a row to win. 

There may be a few bugs, my bad.

Enjoy!</notes>
  <thumbnail>data:image/png;base64,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</thumbnail>
  <stage inheritance='true' id='1' volume='100' height='360' tempo='60' lines='flat' width='360' name='Stage' sublistIDs='false' threadsafe='false' codify='false' color='255,255,255,1' scheduled='false' pan='0' ternary='false' costume='0'>
    <pentrails>data:image/png;base64,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</pentrails>
    <costumes>
      <list struct='atomic' id='2'/>
    </costumes>
    <sounds>
      <list struct='atomic' id='3'/>
    </sounds>
    <variables/>
    <blocks/>
    <scripts/>
    <sprites>
      <sprite draggable='true' x='-180' pen='tip' id='8' y='-180' name='Sprite' idx='1' volume='100' rotation='1' scale='1' color='26,12,0,1' hidden='true' pan='0' heading='90' costume='0'>
        <costumes>
          <list struct='atomic' id='9'/>
        </costumes>
        <sounds>
          <list struct='atomic' id='10'/>
        </sounds>
        <blocks/>
        <variables/>
        <scripts>
          <script x='30' y='30'>
            <block s='receiveGo'/>
            <block s='doSetVar'>
              <l>Big Grid</l>
              <block s='reportNewList'>
                <list>
                  <block s='reportNewList'>
                    <list>
                      <l/>
                      <l/>
                      <l/>
                    </list>
                  </block>
                  <block s='reportNewList'>
                    <list>
                      <l/>
                      <l/>
                      <l/>
                    </list>
                  </block>
                  <block s='reportNewList'>
                    <list>
                      <l/>
                      <l/>
                      <l/>
                    </list>
                  </block>
                </list>
              </block>
            </block>
            <block s='doSetVar'>
              <l>Total Grid</l>
              <block s='reportNewList'>
                <list>
                  <block s='reportNewList'>
                    <list>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                    </list>
                  </block>
                  <block s='reportNewList'>
                    <list>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                    </list>
                  </block>
                  <block s='reportNewList'>
                    <list>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                    </list>
                  </block>
                  <block s='reportNewList'>
                    <list>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                    </list>
                  </block>
                  <block s='reportNewList'>
                    <list>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                    </list>
                  </block>
                  <block s='reportNewList'>
                    <list>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                    </list>
                  </block>
                  <block s='reportNewList'>
                    <list>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                    </list>
                  </block>
                  <block s='reportNewList'>
                    <list>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                    </list>
                  </block>
                  <block s='reportNewList'>
                    <list>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                      <l/>
                    </list>
                  </block>
                </list>
              </block>
            </block>
            <block s='doSetVar'>
              <l>SmallGridTurn</l>
              <l>any</l>
            </block>
            <block s='doSetVar'>
              <l>Turn</l>
              <l>X</l>
            </block>
            <block s='doUntil'>
              <block s='reportNot'>
                <block s='reportEquals'>
                  <custom-block s='ThreeInARow? %s'>
                    <block var='Big Grid'/>
                  </custom-block>
                  <l>F</l>
                </block>
              </block>
              <script>
                <block s='doWarp'>
                  <script>
                    <block s='clear'/>
                    <custom-block s='Add X/Y'/>
                    <custom-block s='Check for 3inarow'/>
                    <custom-block s='Draw Xs and Os'/>
                    <custom-block s='Draw Ultimate Grid size %n at XY %s %s'>
                      <l>360</l>
                      <l>-180</l>
                      <l>180</l>
                    </custom-block>
                  </script>
                </block>
              </script>
            </block>
            <block s='doDeclareVariables'>
              <list>
                <l>Number</l>
                <l>size</l>
              </list>
            </block>
            <block s='doSetVar'>
              <l>size</l>
              <l>9</l>
            </block>
            <block s='doSetVar'>
              <l>Locations</l>
              <custom-block s='All Grid Locations %s'>
                <block var='size'/>
              </custom-block>
            </block>
            <block s='doSetVar'>
              <l>winner</l>
              <custom-block s='ThreeInARow? %s'>
                <block var='Big Grid'/>
              </custom-block>
            </block>
            <block s='doRepeat'>
              <block s='reportListLength'>
                <block var='Locations'/>
              </block>
              <script>
                <block s='doSetVar'>
                  <l>Number</l>
                  <block s='reportRandom'>
                    <l>1</l>
                    <block s='reportListLength'>
                      <block var='Locations'/>
                    </block>
                  </block>
                </block>
                <custom-block s='Fill in box at XY %s %s size %s %b %b'>
                  <block s='reportListItem'>
                    <l>1</l>
                    <block s='reportListItem'>
                      <block var='Number'/>
                      <block var='Locations'/>
                    </block>
                  </block>
                  <block s='reportListItem'>
                    <l>2</l>
                    <block s='reportListItem'>
                      <block var='Number'/>
                      <block var='Locations'/>
                    </block>
                  </block>
                  <block s='reportQuotient'>
                    <l>360</l>
                    <block var='size'/>
                  </block>
                  <l>
                    <bool>false</bool>
                  </l>
                  <l>
                    <bool>true</bool>
                  </l>
                </custom-block>
                <block s='doDeleteFromList'>
                  <block var='Number'/>
                  <block var='Locations'/>
                </block>
              </script>
            </block>
          </script>
          <script x='684.5498056875' y='177.000001'>
            <custom-block s='ThreeInARow? %s'>
              <block var='Big Grid'/>
            </custom-block>
          </script>
          <script x='575' y='126'>
            <block s='doSetVar'>
              <l>Locations</l>
              <custom-block s='All Grid Locations %s'>
                <l/>
              </custom-block>
            </block>
          </script>
          <script x='838' y='39'>
            <custom-block s='Fill in box at XY %s %s size %s %b %b'>
              <l>140</l>
              <l>140</l>
              <l>40</l>
              <l>
                <bool>false</bool>
              </l>
              <l>
                <bool>true</bool>
              </l>
            </custom-block>
          </script>
          <script x='895' y='218'>
            <block s='reportListLength'>
              <block var='Locations'/>
            </block>
          </script>
          <script x='608' y='347'>
            <block s='doReplaceInList'>
              <l>1</l>
              <block s='reportListItem'>
                <l>3</l>
                <block var='Big Grid'/>
              </block>
              <l>full</l>
            </block>
          </script>
          <script x='670' y='598'>
            <custom-block s='Fill %s %s with empty spaces'>
              <l>1</l>
              <l>3</l>
            </custom-block>
          </script>
          <script x='447.544921875' y='252.000004'>
            <custom-block s='ThreeInARow? %s'>
              <block var='Big Grid'/>
            </custom-block>
          </script>
        </scripts>
      </sprite>
      <watcher x='12.14587673611004' color='243,118,29' style='normal' var='Big Grid' y='125.10253281111994' hidden='true'/>
      <watcher scope='Stage' x='12.14587673611004' s='reportMouseX' style='normal' y='238.0591888861283' color='4,148,220' hidden='true'/>
      <watcher scope='Stage' x='12.14587673611004' s='reportMouseY' style='normal' y='263.56553246113725' color='4,148,220' hidden='true'/>
      <watcher x='12.14587673611004' color='243,118,29' style='normal' var='Turn' y='289.0718760361456' hidden='true'/>
      <watcher x='12.14587673611095' color='243,118,29' style='normal' var='SmallGridTurn' y='12.145876736111106' hidden='true'/>
      <watcher x='145.75052083333162' color='243,118,29' style='normal' var='Total Grid' y='29.150104166666736' hidden='true'/>
      <watcher x='12.14587673611095' color='243,118,29' style='normal' var='Locations' y='37.65222031111978' hidden='true'/>
      <watcher x='12.14587673611095' color='243,118,29' style='normal' var='winner' y='329.1532644069618' hidden='true'/>
    </sprites>
  </stage>
  <hidden/>
  <headers/>
  <code/>
  <blocks>
    <block-definition s='Draw Tic Tac Toe Grid size %&apos;Size&apos; top left XY %&apos;X&apos; %&apos;Y&apos;' category='pen' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'/>
        <input type='%s'/>
        <input type='%s'/>
      </inputs>
      <script>
        <block s='up'/>
        <block s='gotoXY'>
          <block var='X'/>
          <block var='Y'/>
        </block>
        <block s='changeYPosition'>
          <block s='reportQuotient'>
            <block var='Size'/>
            <l>3</l>
          </block>
        </block>
        <block s='doRepeat'>
          <l>4</l>
          <script>
            <block s='changeYPosition'>
              <block s='reportQuotient'>
                <block var='Size'/>
                <l>-3</l>
              </block>
            </block>
            <block s='down'/>
            <block s='changeXPosition'>
              <block var='Size'/>
            </block>
            <block s='changeXPosition'>
              <block s='reportProduct'>
                <block var='Size'/>
                <l>-1</l>
              </block>
            </block>
          </script>
        </block>
        <block s='up'/>
        <block s='gotoXY'>
          <block var='X'/>
          <block var='Y'/>
        </block>
        <block s='changeXPosition'>
          <block s='reportQuotient'>
            <block var='Size'/>
            <l>-3</l>
          </block>
        </block>
        <block s='doRepeat'>
          <l>4</l>
          <script>
            <block s='changeXPosition'>
              <block s='reportQuotient'>
                <block var='Size'/>
                <l>3</l>
              </block>
            </block>
            <block s='down'/>
            <block s='changeYPosition'>
              <block s='reportProduct'>
                <block var='Size'/>
                <l>-1</l>
              </block>
            </block>
            <block s='changeYPosition'>
              <block var='Size'/>
            </block>
          </script>
        </block>
        <block s='changeYPosition'>
          <block s='reportProduct'>
            <block var='Size'/>
            <l>-1</l>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='Draw Ultimate Grid size %&apos;Size&apos; at XY %&apos;X&apos; %&apos;Y&apos;' category='pen' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'/>
        <input type='%s'/>
        <input type='%s'/>
      </inputs>
      <script>
        <block s='doWarp'>
          <script>
            <block s='setColor'>
              <color>26,12,0,1</color>
            </block>
            <block s='setSize'>
              <block s='reportQuotient'>
                <block var='Size'/>
                <l>72</l>
              </block>
            </block>
            <custom-block s='Draw Tic Tac Toe Grid size %s top left XY %s %s'>
              <block var='Size'/>
              <block var='X'/>
              <block var='Y'/>
            </custom-block>
            <block s='up'/>
            <block s='gotoXY'>
              <block var='X'/>
              <block var='Y'/>
            </block>
            <block s='setSize'>
              <block s='reportQuotient'>
                <block var='Size'/>
                <l>180</l>
              </block>
            </block>
            <block s='doRepeat'>
              <l>3</l>
              <script>
                <block s='doRepeat'>
                  <l>3</l>
                  <script>
                    <custom-block s='Draw Tic Tac Toe Grid size %s top left XY %s %s'>
                      <block s='reportQuotient'>
                        <block var='Size'/>
                        <l>3</l>
                      </block>
                      <block s='xPosition'/>
                      <block s='yPosition'/>
                    </custom-block>
                    <block s='changeYPosition'>
                      <block s='reportQuotient'>
                        <block var='Size'/>
                        <l>3</l>
                      </block>
                    </block>
                  </script>
                </block>
                <block s='changeXPosition'>
                  <block s='reportQuotient'>
                    <block var='Size'/>
                    <l>-1</l>
                  </block>
                </block>
                <block s='changeYPosition'>
                  <block s='reportQuotient'>
                    <block var='Size'/>
                    <l>-3</l>
                  </block>
                </block>
              </script>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='Fill in box at XY %&apos;X&apos; %&apos;Y&apos; size %&apos;Size&apos; %&apos;big?&apos; %&apos;end?&apos;' category='pen' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'/>
        <input type='%s'/>
        <input type='%s'/>
        <input type='%b'/>
        <input type='%b'/>
      </inputs>
      <script>
        <block s='doIfElse'>
          <block var='end?'/>
          <script>
            <block s='doIfElse'>
              <block s='reportEquals'>
                <block var='winner'/>
                <l>X</l>
              </block>
              <script>
                <block s='setColor'>
                  <color>255,105,0,1</color>
                </block>
              </script>
              <script>
                <block s='doIfElse'>
                  <block s='reportEquals'>
                    <block var='winner'/>
                    <l>O</l>
                  </block>
                  <script>
                    <block s='setColor'>
                      <color>31,230,255,1</color>
                    </block>
                  </script>
                  <script>
                    <block s='setColor'>
                      <color>240,255,82,1</color>
                    </block>
                  </script>
                </block>
              </script>
            </block>
          </script>
          <script>
            <block s='doIfElse'>
              <block var='big?'/>
              <script>
                <block s='setColor'>
                  <color>255,252,138,1</color>
                </block>
              </script>
              <script>
                <block s='doIfElse'>
                  <block s='reportEquals'>
                    <block var='Turn'/>
                    <l>X</l>
                  </block>
                  <script>
                    <block s='setColor'>
                      <color>255,191,158,1</color>
                    </block>
                  </script>
                  <script>
                    <block s='setColor'>
                      <color>179,255,255,1</color>
                    </block>
                  </script>
                </block>
              </script>
            </block>
          </script>
        </block>
        <block s='up'/>
        <block s='gotoXY'>
          <block var='X'/>
          <block var='Y'/>
        </block>
        <block s='changeYPosition'>
          <block s='reportQuotient'>
            <block var='Size'/>
            <l>2</l>
          </block>
        </block>
        <block s='setSize'>
          <block var='Size'/>
        </block>
        <block s='down'/>
        <block s='changeXPosition'>
          <block var='Size'/>
        </block>
      </script>
    </block-definition>
    <block-definition s='Draw X %&apos;X&apos; %&apos;Y&apos; big? %&apos;big?&apos;' category='pen' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'/>
        <input type='%s'/>
        <input type='%b'/>
      </inputs>
      <script>
        <block s='doWarp'>
          <script>
            <block s='up'/>
            <block s='gotoXY'>
              <block var='X'/>
              <block var='Y'/>
            </block>
            <block s='doDeclareVariables'>
              <list>
                <l>Size</l>
              </list>
            </block>
            <block s='doIfElse'>
              <block var='big?'/>
              <script>
                <block s='setSize'>
                  <l>10</l>
                </block>
                <block s='doSetVar'>
                  <l>Size</l>
                  <l>45</l>
                </block>
                <block s='changeXPosition'>
                  <l>60</l>
                </block>
                <block s='changeYPosition'>
                  <l>60</l>
                </block>
              </script>
              <script>
                <block s='setSize'>
                  <l>2</l>
                </block>
                <block s='doSetVar'>
                  <l>Size</l>
                  <l>15</l>
                </block>
                <block s='changeXPosition'>
                  <l>20</l>
                </block>
                <block s='changeYPosition'>
                  <l>20</l>
                </block>
              </script>
            </block>
            <block s='setColor'>
              <color>255,56,10,1</color>
            </block>
            <block s='down'/>
            <block s='setHeading'>
              <l>135</l>
            </block>
            <block s='doRepeat'>
              <l>4</l>
              <script>
                <block s='turn'>
                  <l>90</l>
                </block>
                <block s='forward'>
                  <block s='reportProduct'>
                    <block var='Size'/>
                    <block s='reportMonadic'>
                      <l>
                        <option>sqrt</option>
                      </l>
                      <l>2</l>
                    </block>
                  </block>
                </block>
                <block s='forward'>
                  <block s='reportProduct'>
                    <block s='reportProduct'>
                      <block var='Size'/>
                      <l>-1</l>
                    </block>
                    <block s='reportMonadic'>
                      <l>
                        <option>sqrt</option>
                      </l>
                      <l>2</l>
                    </block>
                  </block>
                </block>
              </script>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='Distance from %&apos;X1&apos; %&apos;Y1&apos; to %&apos;X2&apos; %&apos;Y2&apos;' category='motion' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'/>
        <input type='%s'/>
        <input type='%s'/>
        <input type='%s'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportMonadic'>
            <l>
              <option>sqrt</option>
            </l>
            <block s='reportSum'>
              <block s='reportProduct'>
                <block s='reportDifference'>
                  <block var='X2'/>
                  <block var='X1'/>
                </block>
                <block s='reportDifference'>
                  <block var='X2'/>
                  <block var='X1'/>
                </block>
              </block>
              <block s='reportProduct'>
                <block s='reportDifference'>
                  <block var='Y2'/>
                  <block var='Y1'/>
                </block>
                <block s='reportDifference'>
                  <block var='Y2'/>
                  <block var='Y1'/>
                </block>
              </block>
            </block>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='Mouse On Stage?' category='sensing' type='predicate'>
      <header/>
      <code/>
      <translations/>
      <inputs/>
      <script>
        <block s='doReport'>
          <block s='reportAnd'>
            <block s='reportAnd'>
              <block s='reportGreaterThan'>
                <block s='reportMouseX'/>
                <l>-180</l>
              </block>
              <block s='reportLessThan'>
                <block s='reportMouseX'/>
                <l>180</l>
              </block>
            </block>
            <block s='reportAnd'>
              <block s='reportGreaterThan'>
                <block s='reportMouseY'/>
                <l>-180</l>
              </block>
              <block s='reportLessThan'>
                <block s='reportMouseY'/>
                <l>180</l>
              </block>
            </block>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='Add X/Y' category='other' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs/>
      <script>
        <block s='doWarp'>
          <script>
            <block s='doIf'>
              <block s='reportIsA'>
                <block var='SmallGridTurn'/>
                <l>
                  <option>number</option>
                </l>
              </block>
              <script>
                <custom-block s='Fill in box at XY %s %s size %s %b %b'>
                  <block s='reportSum'>
                    <l>-180</l>
                    <block s='reportProduct'>
                      <block s='reportDifference'>
                        <custom-block s='SmallGridX'/>
                        <l>1</l>
                      </block>
                      <l>120</l>
                    </block>
                  </block>
                  <block s='reportSum'>
                    <l>-180</l>
                    <block s='reportProduct'>
                      <block s='reportDifference'>
                        <custom-block s='SmallGridY'/>
                        <l>1</l>
                      </block>
                      <l>120</l>
                    </block>
                  </block>
                  <l>120</l>
                  <l>
                    <bool>true</bool>
                  </l>
                  <l/>
                </custom-block>
              </script>
            </block>
            <block s='doIf'>
              <custom-block s='Mouse On Stage?'/>
              <script>
                <block s='doIf'>
                  <block s='reportEquals'>
                    <block s='reportListItem'>
                      <block s='reportMonadic'>
                        <l>
                          <option>ceiling</option>
                        </l>
                        <block s='reportQuotient'>
                          <block s='reportSum'>
                            <block s='reportMouseX'/>
                            <l>180</l>
                          </block>
                          <l>40</l>
                        </block>
                      </block>
                      <block s='reportListItem'>
                        <block s='reportDifference'>
                          <block s='reportSum'>
                            <block s='reportListLength'>
                              <block var='Total Grid'/>
                            </block>
                            <l>1</l>
                          </block>
                          <block s='reportMonadic'>
                            <l>
                              <option>ceiling</option>
                            </l>
                            <block s='reportQuotient'>
                              <block s='reportSum'>
                                <block s='reportMouseY'/>
                                <l>180</l>
                              </block>
                              <l>40</l>
                            </block>
                          </block>
                        </block>
                        <block var='Total Grid'/>
                      </block>
                    </block>
                    <l/>
                  </block>
                  <script>
                    <block s='doIf'>
                      <custom-block s='Mouse In Turn Area?'/>
                      <script>
                        <block s='doIfElse'>
                          <block s='reportMouseDown'/>
                          <script>
                            <block s='doReplaceInList'>
                              <block s='reportMonadic'>
                                <l>
                                  <option>ceiling</option>
                                </l>
                                <block s='reportQuotient'>
                                  <block s='reportSum'>
                                    <block s='reportMouseX'/>
                                    <l>180</l>
                                  </block>
                                  <l>40</l>
                                </block>
                              </block>
                              <block s='reportListItem'>
                                <block s='reportDifference'>
                                  <block s='reportSum'>
                                    <block s='reportListLength'>
                                      <block var='Total Grid'/>
                                    </block>
                                    <l>1</l>
                                  </block>
                                  <block s='reportMonadic'>
                                    <l>
                                      <option>ceiling</option>
                                    </l>
                                    <block s='reportQuotient'>
                                      <block s='reportSum'>
                                        <block s='reportMouseY'/>
                                        <l>180</l>
                                      </block>
                                      <l>40</l>
                                    </block>
                                  </block>
                                </block>
                                <block var='Total Grid'/>
                              </block>
                              <block var='Turn'/>
                            </block>
                            <custom-block s='ChangeSmallGridTurn'/>
                            <block s='doIfElse'>
                              <block s='reportEquals'>
                                <block var='Turn'/>
                                <l>x</l>
                              </block>
                              <script>
                                <block s='doSetVar'>
                                  <l>Turn</l>
                                  <l>O</l>
                                </block>
                              </script>
                              <script>
                                <block s='doSetVar'>
                                  <l>Turn</l>
                                  <l>X</l>
                                </block>
                              </script>
                            </block>
                          </script>
                          <script>
                            <custom-block s='Fill in box at XY %s %s size %s %b %b'>
                              <block s='reportSum'>
                                <l>-180</l>
                                <block s='reportProduct'>
                                  <block s='reportDifference'>
                                    <block s='reportMonadic'>
                                      <l>
                                        <option>ceiling</option>
                                      </l>
                                      <block s='reportQuotient'>
                                        <block s='reportSum'>
                                          <block s='reportMouseX'/>
                                          <l>180</l>
                                        </block>
                                        <l>40</l>
                                      </block>
                                    </block>
                                    <l>1</l>
                                  </block>
                                  <l>40</l>
                                </block>
                              </block>
                              <block s='reportSum'>
                                <l>-180</l>
                                <block s='reportProduct'>
                                  <block s='reportDifference'>
                                    <block s='reportMonadic'>
                                      <l>
                                        <option>ceiling</option>
                                      </l>
                                      <block s='reportQuotient'>
                                        <block s='reportSum'>
                                          <block s='reportMouseY'/>
                                          <l>180</l>
                                        </block>
                                        <l>40</l>
                                      </block>
                                    </block>
                                    <l>1</l>
                                  </block>
                                  <l>40</l>
                                </block>
                              </block>
                              <l>40</l>
                              <l>
                                <bool>false</bool>
                              </l>
                              <l/>
                            </custom-block>
                          </script>
                        </block>
                      </script>
                    </block>
                  </script>
                </block>
              </script>
            </block>
            <block s='doIf'>
              <block s='reportNot'>
                <block s='reportEquals'>
                  <block var='SmallGridTurn'/>
                  <l>any</l>
                </block>
              </block>
              <script>
                <block s='doIf'>
                  <block s='reportNot'>
                    <block s='reportEquals'>
                      <block s='reportListItem'>
                        <custom-block s='SmallGridX'/>
                        <block s='reportListItem'>
                          <block s='reportDifference'>
                            <l>4</l>
                            <custom-block s='SmallGridY'/>
                          </block>
                          <block var='Big Grid'/>
                        </block>
                      </block>
                      <l/>
                    </block>
                  </block>
                  <script>
                    <block s='doSetVar'>
                      <l>SmallGridTurn</l>
                      <l>any</l>
                    </block>
                  </script>
                </block>
              </script>
            </block>
          </script>
        </block>
      </script>
      <scripts>
        <script x='615' y='394.2'>
          <block s='reportModulus'>
            <l>6</l>
            <l>3</l>
          </block>
        </script>
        <script x='540' y='450.2'>
          <block s='reportMonadic'>
            <l>
              <option>ceiling</option>
            </l>
            <block s='reportQuotient'>
              <l>1</l>
              <l>3</l>
            </block>
          </block>
        </script>
        <script x='265' y='16.200000000000045'>
          <block s='reportMonadic'>
            <l>
              <option>ceiling</option>
            </l>
            <block s='reportQuotient'>
              <block s='reportSum'>
                <block s='reportMouseX'/>
                <l>180</l>
              </block>
              <l>40</l>
            </block>
          </block>
        </script>
        <script x='263' y='56.200000000000045'>
          <block s='reportMonadic'>
            <l>
              <option>ceiling</option>
            </l>
            <block s='reportQuotient'>
              <block s='reportSum'>
                <block s='reportMouseY'/>
                <l>180</l>
              </block>
              <l>40</l>
            </block>
          </block>
        </script>
        <script x='544' y='20.19999999999999'>
          <block s='reportModulus'>
            <block var='SmallGridTurn'/>
            <l>3</l>
          </block>
        </script>
        <script x='542' y='55.19999999999999'>
          <block s='reportMonadic'>
            <l>
              <option>ceiling</option>
            </l>
            <block s='reportQuotient'>
              <block var='SmallGridTurn'/>
              <l>3</l>
            </block>
          </block>
        </script>
        <script x='519' y='136.2'>
          <block s='reportSum'>
            <l>-180</l>
            <block s='reportProduct'>
              <block s='reportDifference'>
                <block s='reportModulus'>
                  <block var='SmallGridTurn'/>
                  <l>3</l>
                </block>
                <l>1</l>
              </block>
              <l>120</l>
            </block>
          </block>
        </script>
      </scripts>
    </block-definition>
    <block-definition s='Draw O %&apos;X&apos; %&apos;Y&apos; big? %&apos;big?&apos;' category='pen' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'/>
        <input type='%s'/>
        <input type='%b'/>
      </inputs>
      <script>
        <block s='doWarp'>
          <script>
            <block s='up'/>
            <block s='gotoXY'>
              <block var='X'/>
              <block var='Y'/>
            </block>
            <block s='doDeclareVariables'>
              <list>
                <l>Size</l>
              </list>
            </block>
            <block s='doIfElse'>
              <block var='big?'/>
              <script>
                <block s='setSize'>
                  <l>10</l>
                </block>
                <block s='doSetVar'>
                  <l>Size</l>
                  <l>45</l>
                </block>
                <block s='changeXPosition'>
                  <l>60</l>
                </block>
                <block s='changeYPosition'>
                  <l>60</l>
                </block>
              </script>
              <script>
                <block s='setSize'>
                  <l>2</l>
                </block>
                <block s='doSetVar'>
                  <l>Size</l>
                  <l>15</l>
                </block>
                <block s='changeXPosition'>
                  <l>20</l>
                </block>
                <block s='changeYPosition'>
                  <l>20</l>
                </block>
              </script>
            </block>
            <block s='setColor'>
              <color>36,58,255,1</color>
            </block>
            <block s='setHeading'>
              <l>90</l>
            </block>
            <block s='changeYPosition'>
              <block var='Size'/>
            </block>
            <block s='down'/>
            <block s='doRepeat'>
              <l>120</l>
              <script>
                <block s='forward'>
                  <block s='reportQuotient'>
                    <block s='reportProduct'>
                      <l>3.1415</l>
                      <block s='reportProduct'>
                        <block var='Size'/>
                        <l>2</l>
                      </block>
                    </block>
                    <l>120</l>
                  </block>
                </block>
                <block s='turn'>
                  <l>3</l>
                </block>
              </script>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='Draw Xs and Os' category='pen' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs/>
      <script>
        <block s='doDeclareVariables'>
          <list>
            <l>X</l>
            <l>Y</l>
          </list>
        </block>
        <block s='doSetVar'>
          <l>X</l>
          <l>1</l>
        </block>
        <block s='doSetVar'>
          <l>Y</l>
          <l>1</l>
        </block>
        <block s='doRepeat'>
          <l>9</l>
          <script>
            <block s='doRepeat'>
              <l>9</l>
              <script>
                <block s='doIf'>
                  <block s='reportEquals'>
                    <block s='reportListItem'>
                      <block var='X'/>
                      <block s='reportListItem'>
                        <block s='reportDifference'>
                          <l>10</l>
                          <block var='Y'/>
                        </block>
                        <block var='Total Grid'/>
                      </block>
                    </block>
                    <l>X</l>
                  </block>
                  <script>
                    <custom-block s='Draw X %s %s big? %b'>
                      <block s='reportSum'>
                        <l>-180</l>
                        <block s='reportProduct'>
                          <block s='reportDifference'>
                            <block var='X'/>
                            <l>1</l>
                          </block>
                          <l>40</l>
                        </block>
                      </block>
                      <block s='reportSum'>
                        <l>-180</l>
                        <block s='reportProduct'>
                          <block s='reportDifference'>
                            <block var='Y'/>
                            <l>1</l>
                          </block>
                          <l>40</l>
                        </block>
                      </block>
                      <l>
                        <bool>false</bool>
                      </l>
                    </custom-block>
                  </script>
                </block>
                <block s='doIf'>
                  <block s='reportEquals'>
                    <block s='reportListItem'>
                      <block var='X'/>
                      <block s='reportListItem'>
                        <block s='reportDifference'>
                          <l>10</l>
                          <block var='Y'/>
                        </block>
                        <block var='Total Grid'/>
                      </block>
                    </block>
                    <l>O</l>
                  </block>
                  <script>
                    <custom-block s='Draw O %s %s big? %b'>
                      <block s='reportSum'>
                        <l>-180</l>
                        <block s='reportProduct'>
                          <block s='reportDifference'>
                            <block var='X'/>
                            <l>1</l>
                          </block>
                          <l>40</l>
                        </block>
                      </block>
                      <block s='reportSum'>
                        <l>-180</l>
                        <block s='reportProduct'>
                          <block s='reportDifference'>
                            <block var='Y'/>
                            <l>1</l>
                          </block>
                          <l>40</l>
                        </block>
                      </block>
                      <l>
                        <bool>false</bool>
                      </l>
                    </custom-block>
                  </script>
                </block>
                <block s='doChangeVar'>
                  <l>X</l>
                  <l>1</l>
                </block>
              </script>
            </block>
            <block s='doSetVar'>
              <l>X</l>
              <l>1</l>
            </block>
            <block s='doChangeVar'>
              <l>Y</l>
              <l>1</l>
            </block>
          </script>
        </block>
        <block s='doSetVar'>
          <l>X</l>
          <l>1</l>
        </block>
        <block s='doSetVar'>
          <l>Y</l>
          <l>1</l>
        </block>
        <block s='doRepeat'>
          <l>3</l>
          <script>
            <block s='doRepeat'>
              <l>3</l>
              <script>
                <block s='doIf'>
                  <block s='reportEquals'>
                    <block s='reportListItem'>
                      <block var='X'/>
                      <block s='reportListItem'>
                        <block s='reportDifference'>
                          <l>4</l>
                          <block var='Y'/>
                        </block>
                        <block var='Big Grid'/>
                      </block>
                    </block>
                    <l>X</l>
                  </block>
                  <script>
                    <custom-block s='Draw X %s %s big? %b'>
                      <block s='reportSum'>
                        <l>-180</l>
                        <block s='reportProduct'>
                          <block s='reportDifference'>
                            <block var='X'/>
                            <l>1</l>
                          </block>
                          <l>120</l>
                        </block>
                      </block>
                      <block s='reportSum'>
                        <l>-180</l>
                        <block s='reportProduct'>
                          <block s='reportDifference'>
                            <block var='Y'/>
                            <l>1</l>
                          </block>
                          <l>120</l>
                        </block>
                      </block>
                      <l>
                        <bool>true</bool>
                      </l>
                    </custom-block>
                  </script>
                </block>
                <block s='doIf'>
                  <block s='reportEquals'>
                    <block s='reportListItem'>
                      <block var='X'/>
                      <block s='reportListItem'>
                        <block s='reportDifference'>
                          <l>4</l>
                          <block var='Y'/>
                        </block>
                        <block var='Big Grid'/>
                      </block>
                    </block>
                    <l>O</l>
                  </block>
                  <script>
                    <custom-block s='Draw O %s %s big? %b'>
                      <block s='reportSum'>
                        <l>-180</l>
                        <block s='reportProduct'>
                          <block s='reportDifference'>
                            <block var='X'/>
                            <l>1</l>
                          </block>
                          <l>120</l>
                        </block>
                      </block>
                      <block s='reportSum'>
                        <l>-180</l>
                        <block s='reportProduct'>
                          <block s='reportDifference'>
                            <block var='Y'/>
                            <l>1</l>
                          </block>
                          <l>120</l>
                        </block>
                      </block>
                      <l>
                        <bool>true</bool>
                      </l>
                    </custom-block>
                  </script>
                </block>
                <block s='doChangeVar'>
                  <l>X</l>
                  <l>1</l>
                </block>
              </script>
            </block>
            <block s='doSetVar'>
              <l>X</l>
              <l>1</l>
            </block>
            <block s='doChangeVar'>
              <l>Y</l>
              <l>1</l>
            </block>
          </script>
        </block>
      </script>
      <scripts>
        <script x='356' y='440.2'>
          <block s='changeXPosition'>
            <l>40</l>
          </block>
          <block s='changeYPosition'>
            <l>40</l>
          </block>
        </script>
      </scripts>
    </block-definition>
    <block-definition s='Number %&apos;Number&apos; subtracted by %&apos;Sub&apos; until at zero' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'/>
        <input type='%s'/>
      </inputs>
      <script>
        <block s='doWarp'>
          <script>
            <block s='doUntil'>
              <block s='reportOr'>
                <block s='reportLessThan'>
                  <block var='Number'/>
                  <l>0</l>
                </block>
                <block s='reportEquals'>
                  <block var='Number'/>
                  <l>0</l>
                </block>
              </block>
              <script>
                <block s='doChangeVar'>
                  <l>Number</l>
                  <block s='reportProduct'>
                    <block var='Sub'/>
                    <l>-1</l>
                  </block>
                </block>
              </script>
            </block>
            <block s='doChangeVar'>
              <l>Number</l>
              <block var='Sub'/>
            </block>
            <block s='doReport'>
              <block var='Number'/>
            </block>
          </script>
        </block>
      </script>
      <scripts>
        <script x='222' y='182.2'>
          <block s='reportModulus'>
            <l>9</l>
            <l>3</l>
          </block>
        </script>
      </scripts>
    </block-definition>
    <block-definition s='Number of times subtraced %&apos;Number&apos; %&apos;Sub&apos;' category='operators' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'/>
        <input type='%s'/>
      </inputs>
      <script>
        <block s='doDeclareVariables'>
          <list>
            <l>a</l>
          </list>
        </block>
        <block s='doSetVar'>
          <l>a</l>
          <l>0</l>
        </block>
        <block s='doWarp'>
          <script>
            <block s='doUntil'>
              <block s='reportOr'>
                <block s='reportLessThan'>
                  <block var='Number'/>
                  <l>0</l>
                </block>
                <block s='reportEquals'>
                  <block var='Number'/>
                  <l>0</l>
                </block>
              </block>
              <script>
                <block s='doChangeVar'>
                  <l>Number</l>
                  <block s='reportProduct'>
                    <block var='Sub'/>
                    <l>-1</l>
                  </block>
                </block>
                <block s='doChangeVar'>
                  <l>a</l>
                  <l>1</l>
                </block>
              </script>
            </block>
            <block s='doReport'>
              <block var='a'/>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='Mouse In Turn Area?' category='sensing' type='predicate'>
      <header/>
      <code/>
      <translations/>
      <inputs/>
      <script>
        <block s='doReport'>
          <block s='reportOr'>
            <block s='reportAnd'>
              <block s='reportAnd'>
                <block s='reportGreaterThan'>
                  <block s='reportMouseX'/>
                  <block s='reportSum'>
                    <l>-180</l>
                    <block s='reportProduct'>
                      <block s='reportDifference'>
                        <custom-block s='SmallGridX'/>
                        <l>1</l>
                      </block>
                      <l>120</l>
                    </block>
                  </block>
                </block>
                <block s='reportLessThan'>
                  <block s='reportMouseX'/>
                  <block s='reportSum'>
                    <block s='reportSum'>
                      <l>-180</l>
                      <block s='reportProduct'>
                        <block s='reportDifference'>
                          <custom-block s='SmallGridX'/>
                          <l>1</l>
                        </block>
                        <l>120</l>
                      </block>
                    </block>
                    <l>120</l>
                  </block>
                </block>
              </block>
              <block s='reportAnd'>
                <block s='reportGreaterThan'>
                  <block s='reportMouseY'/>
                  <block s='reportSum'>
                    <l>-180</l>
                    <block s='reportProduct'>
                      <l>120</l>
                      <block s='reportDifference'>
                        <block s='reportMonadic'>
                          <l>
                            <option>ceiling</option>
                          </l>
                          <block s='reportQuotient'>
                            <block var='SmallGridTurn'/>
                            <l>3</l>
                          </block>
                        </block>
                        <l>1</l>
                      </block>
                    </block>
                  </block>
                </block>
                <block s='reportLessThan'>
                  <block s='reportMouseY'/>
                  <block s='reportSum'>
                    <l>-180</l>
                    <block s='reportProduct'>
                      <l>120</l>
                      <block s='reportMonadic'>
                        <l>
                          <option>ceiling</option>
                        </l>
                        <block s='reportQuotient'>
                          <block var='SmallGridTurn'/>
                          <l>3</l>
                        </block>
                      </block>
                    </block>
                  </block>
                </block>
              </block>
            </block>
            <block s='reportNot'>
              <block s='reportIsA'>
                <block var='SmallGridTurn'/>
                <l>
                  <option>number</option>
                </l>
              </block>
            </block>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='SmallGridX' category='other' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs/>
      <script>
        <block s='doIfElse'>
          <block s='reportEquals'>
            <block s='reportModulus'>
              <block var='SmallGridTurn'/>
              <l>3</l>
            </block>
            <l>0</l>
          </block>
          <script>
            <block s='doReport'>
              <l>3</l>
            </block>
          </script>
          <script>
            <block s='doReport'>
              <block s='reportModulus'>
                <block var='SmallGridTurn'/>
                <l>3</l>
              </block>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='ChangeSmallGridTurn' category='other' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs/>
      <script>
        <block s='doWarp'>
          <script>
            <block s='doDeclareVariables'>
              <list>
                <l>X</l>
                <l>Y</l>
                <l>Count</l>
              </list>
            </block>
            <block s='doSetVar'>
              <l>X</l>
              <l>0</l>
            </block>
            <block s='doSetVar'>
              <l>Y</l>
              <l>0</l>
            </block>
            <block s='doSetVar'>
              <l>Count</l>
              <l>1</l>
            </block>
            <block s='doRepeat'>
              <l>3</l>
              <script>
                <block s='doRepeat'>
                  <l>3</l>
                  <script>
                    <block s='doIf'>
                      <custom-block s='SmallGridX = %s and SmallGridY = %s'>
                        <block var='X'/>
                        <block var='Y'/>
                      </custom-block>
                      <script>
                        <block s='doSetVar'>
                          <l>SmallGridTurn</l>
                          <block var='Count'/>
                        </block>
                      </script>
                    </block>
                    <block s='doChangeVar'>
                      <l>X</l>
                      <l>1</l>
                    </block>
                    <block s='doChangeVar'>
                      <l>Count</l>
                      <l>1</l>
                    </block>
                  </script>
                </block>
                <block s='doSetVar'>
                  <l>X</l>
                  <l>0</l>
                </block>
                <block s='doChangeVar'>
                  <l>Y</l>
                  <l>1</l>
                </block>
              </script>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='SmallGridX = %&apos;X&apos; and SmallGridY = %&apos;Y&apos;' category='operators' type='predicate'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'/>
        <input type='%s'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportAnd'>
            <block s='reportEquals'>
              <block s='reportModulus'>
                <block s='reportDifference'>
                  <block s='reportMonadic'>
                    <l>
                      <option>ceiling</option>
                    </l>
                    <block s='reportQuotient'>
                      <block s='reportSum'>
                        <block s='reportMouseX'/>
                        <l>180</l>
                      </block>
                      <l>40</l>
                    </block>
                  </block>
                  <l>1</l>
                </block>
                <l>3</l>
              </block>
              <block var='X'/>
            </block>
            <block s='reportEquals'>
              <block s='reportModulus'>
                <block s='reportDifference'>
                  <block s='reportMonadic'>
                    <l>
                      <option>ceiling</option>
                    </l>
                    <block s='reportQuotient'>
                      <block s='reportSum'>
                        <block s='reportMouseY'/>
                        <l>180</l>
                      </block>
                      <l>40</l>
                    </block>
                  </block>
                  <l>1</l>
                </block>
                <l>3</l>
              </block>
              <block var='Y'/>
            </block>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='SmallGridY' category='other' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs/>
      <script>
        <block s='doReport'>
          <block s='reportMonadic'>
            <l>
              <option>ceiling</option>
            </l>
            <block s='reportQuotient'>
              <block var='SmallGridTurn'/>
              <l>3</l>
            </block>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='Check for 3inarow' category='other' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs/>
      <script>
        <block s='doDeclareVariables'>
          <list>
            <l>GridInfo</l>
            <l>X</l>
            <l>Y</l>
          </list>
        </block>
        <block s='doSetVar'>
          <l>X</l>
          <l>1</l>
        </block>
        <block s='doSetVar'>
          <l>Y</l>
          <l>1</l>
        </block>
        <block s='doRepeat'>
          <l>3</l>
          <script>
            <block s='doRepeat'>
              <l>3</l>
              <script>
                <block s='doIf'>
                  <block s='reportEquals'>
                    <block s='reportListItem'>
                      <block var='X'/>
                      <block s='reportListItem'>
                        <block s='reportDifference'>
                          <l>4</l>
                          <block var='Y'/>
                        </block>
                        <block var='Big Grid'/>
                      </block>
                    </block>
                    <l/>
                  </block>
                  <script>
                    <block s='doSetVar'>
                      <l>GridInfo</l>
                      <custom-block s='ThreeInARow? %s'>
                        <custom-block s='SmallGrid at %s %s'>
                          <block var='X'/>
                          <block var='Y'/>
                        </custom-block>
                      </custom-block>
                    </block>
                    <block s='doIf'>
                      <block s='reportNot'>
                        <block s='reportEquals'>
                          <block var='GridInfo'/>
                          <l>F</l>
                        </block>
                      </block>
                      <script>
                        <block s='doReplaceInList'>
                          <block var='X'/>
                          <block s='reportListItem'>
                            <block s='reportDifference'>
                              <l>4</l>
                              <block var='Y'/>
                            </block>
                            <block var='Big Grid'/>
                          </block>
                          <block var='GridInfo'/>
                        </block>
                        <custom-block s='Fill %s %s with empty spaces'>
                          <block var='X'/>
                          <block var='Y'/>
                        </custom-block>
                      </script>
                    </block>
                  </script>
                </block>
                <block s='doChangeVar'>
                  <l>X</l>
                  <l>1</l>
                </block>
              </script>
            </block>
            <block s='doSetVar'>
              <l>X</l>
              <l>1</l>
            </block>
            <block s='doChangeVar'>
              <l>Y</l>
              <l>1</l>
            </block>
          </script>
        </block>
      </script>
      <scripts>
        <script x='185' y='352.2'>
          <custom-block s='ThreeInARow? %s'>
            <custom-block s='SmallGrid at %s %s'>
              <l>2</l>
              <l>1</l>
            </custom-block>
          </custom-block>
        </script>
        <script x='156' y='406.2'>
          <custom-block s='ThreeInARow? %s'>
            <custom-block s='SmallGrid at %s %s'>
              <l>3</l>
              <l>1</l>
            </custom-block>
          </custom-block>
        </script>
        <script x='78' y='454.2'>
          <custom-block s='ThreeInARow? %s'>
            <block var='Big Grid'/>
          </custom-block>
        </script>
        <script x='159.1884775625' y='493.200002'>
          <custom-block s='SmallGrid at %s %s'>
            <l>3</l>
            <l>1</l>
          </custom-block>
        </script>
        <script x='248.7578165' y='291.00000399999993'>
          <block var='Y'/>
        </script>
        <script x='154.7578165' y='129.000004'>
          <block var='X'/>
        </script>
        <script x='182.7578165' y='130.000004'>
          <block var='Y'/>
        </script>
        <script x='88.4208994375' y='494.2000009999999'>
          <block var='X'/>
        </script>
        <script x='297.3769561250001' y='485.200005'>
          <block var='Y'/>
        </script>
        <script x='32' y='451.2'>
          <block s='doReplaceInList'>
            <l>2</l>
            <block s='reportListItem'>
              <block s='reportDifference'>
                <l>4</l>
                <l>1</l>
              </block>
              <block var='Big Grid'/>
            </block>
            <l>full</l>
          </block>
        </script>
        <script x='393.4023447499999' y='493.200001'>
          <block var='GridInfo'/>
        </script>
      </scripts>
    </block-definition>
    <block-definition s='SmallGrid at %&apos;X&apos; %&apos;Y&apos;' category='other' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'/>
        <input type='%s'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportNewList'>
            <list>
              <block s='reportNewList'>
                <list>
                  <block s='reportListItem'>
                    <block s='reportSum'>
                      <l>1</l>
                      <block s='reportProduct'>
                        <block s='reportDifference'>
                          <block var='X'/>
                          <l>1</l>
                        </block>
                        <l>3</l>
                      </block>
                    </block>
                    <block s='reportListItem'>
                      <block s='reportDifference'>
                        <l>10</l>
                        <block s='reportSum'>
                          <l>3</l>
                          <block s='reportProduct'>
                            <block s='reportDifference'>
                              <block var='Y'/>
                              <l>1</l>
                            </block>
                            <l>3</l>
                          </block>
                        </block>
                      </block>
                      <block var='Total Grid'/>
                    </block>
                  </block>
                  <block s='reportListItem'>
                    <block s='reportSum'>
                      <l>2</l>
                      <block s='reportProduct'>
                        <block s='reportDifference'>
                          <block var='X'/>
                          <l>1</l>
                        </block>
                        <l>3</l>
                      </block>
                    </block>
                    <block s='reportListItem'>
                      <block s='reportDifference'>
                        <l>10</l>
                        <block s='reportSum'>
                          <l>3</l>
                          <block s='reportProduct'>
                            <block s='reportDifference'>
                              <block var='Y'/>
                              <l>1</l>
                            </block>
                            <l>3</l>
                          </block>
                        </block>
                      </block>
                      <block var='Total Grid'/>
                    </block>
                  </block>
                  <block s='reportListItem'>
                    <block s='reportSum'>
                      <l>3</l>
                      <block s='reportProduct'>
                        <block s='reportDifference'>
                          <block var='X'/>
                          <l>1</l>
                        </block>
                        <l>3</l>
                      </block>
                    </block>
                    <block s='reportListItem'>
                      <block s='reportDifference'>
                        <l>10</l>
                        <block s='reportSum'>
                          <l>3</l>
                          <block s='reportProduct'>
                            <block s='reportDifference'>
                              <block var='Y'/>
                              <l>1</l>
                            </block>
                            <l>3</l>
                          </block>
                        </block>
                      </block>
                      <block var='Total Grid'/>
                    </block>
                  </block>
                </list>
              </block>
              <block s='reportNewList'>
                <list>
                  <block s='reportListItem'>
                    <block s='reportSum'>
                      <l>1</l>
                      <block s='reportProduct'>
                        <block s='reportDifference'>
                          <block var='X'/>
                          <l>1</l>
                        </block>
                        <l>3</l>
                      </block>
                    </block>
                    <block s='reportListItem'>
                      <block s='reportDifference'>
                        <l>10</l>
                        <block s='reportSum'>
                          <l>2</l>
                          <block s='reportProduct'>
                            <block s='reportDifference'>
                              <block var='Y'/>
                              <l>1</l>
                            </block>
                            <l>3</l>
                          </block>
                        </block>
                      </block>
                      <block var='Total Grid'/>
                    </block>
                  </block>
                  <block s='reportListItem'>
                    <block s='reportSum'>
                      <l>2</l>
                      <block s='reportProduct'>
                        <block s='reportDifference'>
                          <block var='X'/>
                          <l>1</l>
                        </block>
                        <l>3</l>
                      </block>
                    </block>
                    <block s='reportListItem'>
                      <block s='reportDifference'>
                        <l>10</l>
                        <block s='reportSum'>
                          <l>2</l>
                          <block s='reportProduct'>
                            <block s='reportDifference'>
                              <block var='Y'/>
                              <l>1</l>
                            </block>
                            <l>3</l>
                          </block>
                        </block>
                      </block>
                      <block var='Total Grid'/>
                    </block>
                  </block>
                  <block s='reportListItem'>
                    <block s='reportSum'>
                      <l>3</l>
                      <block s='reportProduct'>
                        <block s='reportDifference'>
                          <block var='X'/>
                          <l>1</l>
                        </block>
                        <l>3</l>
                      </block>
                    </block>
                    <block s='reportListItem'>
                      <block s='reportDifference'>
                        <l>10</l>
                        <block s='reportSum'>
                          <l>2</l>
                          <block s='reportProduct'>
                            <block s='reportDifference'>
                              <block var='Y'/>
                              <l>1</l>
                            </block>
                            <l>3</l>
                          </block>
                        </block>
                      </block>
                      <block var='Total Grid'/>
                    </block>
                  </block>
                </list>
              </block>
              <block s='reportNewList'>
                <list>
                  <block s='reportListItem'>
                    <block s='reportSum'>
                      <l>1</l>
                      <block s='reportProduct'>
                        <block s='reportDifference'>
                          <block var='X'/>
                          <l>1</l>
                        </block>
                        <l>3</l>
                      </block>
                    </block>
                    <block s='reportListItem'>
                      <block s='reportDifference'>
                        <l>10</l>
                        <block s='reportSum'>
                          <l>1</l>
                          <block s='reportProduct'>
                            <block s='reportDifference'>
                              <block var='Y'/>
                              <l>1</l>
                            </block>
                            <l>3</l>
                          </block>
                        </block>
                      </block>
                      <block var='Total Grid'/>
                    </block>
                  </block>
                  <block s='reportListItem'>
                    <block s='reportSum'>
                      <l>2</l>
                      <block s='reportProduct'>
                        <block s='reportDifference'>
                          <block var='X'/>
                          <l>1</l>
                        </block>
                        <l>3</l>
                      </block>
                    </block>
                    <block s='reportListItem'>
                      <block s='reportDifference'>
                        <l>10</l>
                        <block s='reportSum'>
                          <l>1</l>
                          <block s='reportProduct'>
                            <block s='reportDifference'>
                              <block var='Y'/>
                              <l>1</l>
                            </block>
                            <l>3</l>
                          </block>
                        </block>
                      </block>
                      <block var='Total Grid'/>
                    </block>
                  </block>
                  <block s='reportListItem'>
                    <block s='reportSum'>
                      <l>3</l>
                      <block s='reportProduct'>
                        <block s='reportDifference'>
                          <block var='X'/>
                          <l>1</l>
                        </block>
                        <l>3</l>
                      </block>
                    </block>
                    <block s='reportListItem'>
                      <block s='reportDifference'>
                        <l>10</l>
                        <block s='reportSum'>
                          <l>1</l>
                          <block s='reportProduct'>
                            <block s='reportDifference'>
                              <block var='Y'/>
                              <l>1</l>
                            </block>
                            <l>3</l>
                          </block>
                        </block>
                      </block>
                      <block var='Total Grid'/>
                    </block>
                  </block>
                </list>
              </block>
            </list>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='ThreeInARow? %&apos;Grid&apos;' category='other' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'/>
      </inputs>
      <script>
        <block s='doDeclareVariables'>
          <list>
            <l>Winner</l>
            <l>Ycount</l>
          </list>
        </block>
        <block s='doSetVar'>
          <l>Winner</l>
          <l>F</l>
        </block>
        <block s='doSetVar'>
          <l>Ycount</l>
          <l>1</l>
        </block>
        <block s='doIf'>
          <block s='reportAnd'>
            <block s='reportNot'>
              <block s='reportListContainsItem'>
                <block s='reportListItem'>
                  <l>1</l>
                  <block var='Grid'/>
                </block>
                <l/>
              </block>
            </block>
            <block s='reportAnd'>
              <block s='reportNot'>
                <block s='reportListContainsItem'>
                  <block s='reportListItem'>
                    <l>2</l>
                    <block var='Grid'/>
                  </block>
                  <l/>
                </block>
              </block>
              <block s='reportNot'>
                <block s='reportListContainsItem'>
                  <block s='reportListItem'>
                    <l>3</l>
                    <block var='Grid'/>
                  </block>
                  <l/>
                </block>
              </block>
            </block>
          </block>
          <script>
            <block s='doSetVar'>
              <l>Winner</l>
              <l>full</l>
            </block>
          </script>
        </block>
        <block s='doRepeat'>
          <l>3</l>
          <script>
            <block s='doIf'>
              <block s='reportEquals'>
                <block var='Winner'/>
                <l>F</l>
              </block>
              <script>
                <block s='doIf'>
                  <block s='reportAnd'>
                    <block s='reportEquals'>
                      <block s='reportListItem'>
                        <l>1</l>
                        <block s='reportListItem'>
                          <block var='Ycount'/>
                          <block var='Grid'/>
                        </block>
                      </block>
                      <block s='reportListItem'>
                        <l>2</l>
                        <block s='reportListItem'>
                          <block var='Ycount'/>
                          <block var='Grid'/>
                        </block>
                      </block>
                    </block>
                    <block s='reportEquals'>
                      <block s='reportListItem'>
                        <l>2</l>
                        <block s='reportListItem'>
                          <block var='Ycount'/>
                          <block var='Grid'/>
                        </block>
                      </block>
                      <block s='reportListItem'>
                        <l>3</l>
                        <block s='reportListItem'>
                          <block var='Ycount'/>
                          <block var='Grid'/>
                        </block>
                      </block>
                    </block>
                  </block>
                  <script>
                    <block s='doIf'>
                      <block s='reportAnd'>
                        <block s='reportNot'>
                          <block s='reportEquals'>
                            <block s='reportListItem'>
                              <l>1</l>
                              <block s='reportListItem'>
                                <block var='Ycount'/>
                                <block var='Grid'/>
                              </block>
                            </block>
                            <l/>
                          </block>
                        </block>
                        <block s='reportNot'>
                          <block s='reportEquals'>
                            <block s='reportListItem'>
                              <l>1</l>
                              <block s='reportListItem'>
                                <block var='Ycount'/>
                                <block var='Grid'/>
                              </block>
                            </block>
                            <l>full</l>
                          </block>
                        </block>
                      </block>
                      <script>
                        <block s='doSetVar'>
                          <l>Winner</l>
                          <block s='reportListItem'>
                            <l>1</l>
                            <block s='reportListItem'>
                              <block var='Ycount'/>
                              <block var='Grid'/>
                            </block>
                          </block>
                        </block>
                      </script>
                    </block>
                  </script>
                </block>
                <block s='doChangeVar'>
                  <l>Ycount</l>
                  <l>1</l>
                </block>
              </script>
            </block>
          </script>
        </block>
        <block s='doSetVar'>
          <l>Ycount</l>
          <l>1</l>
        </block>
        <block s='doRepeat'>
          <l>3</l>
          <script>
            <block s='doIf'>
              <block s='reportEquals'>
                <block var='Winner'/>
                <l>F</l>
              </block>
              <script>
                <block s='doIf'>
                  <block s='reportAnd'>
                    <block s='reportEquals'>
                      <block s='reportListItem'>
                        <block var='Ycount'/>
                        <block s='reportListItem'>
                          <l>1</l>
                          <block var='Grid'/>
                        </block>
                      </block>
                      <block s='reportListItem'>
                        <block var='Ycount'/>
                        <block s='reportListItem'>
                          <l>2</l>
                          <block var='Grid'/>
                        </block>
                      </block>
                    </block>
                    <block s='reportEquals'>
                      <block s='reportListItem'>
                        <block var='Ycount'/>
                        <block s='reportListItem'>
                          <l>2</l>
                          <block var='Grid'/>
                        </block>
                      </block>
                      <block s='reportListItem'>
                        <block var='Ycount'/>
                        <block s='reportListItem'>
                          <l>3</l>
                          <block var='Grid'/>
                        </block>
                      </block>
                    </block>
                  </block>
                  <script>
                    <block s='doIf'>
                      <block s='reportAnd'>
                        <block s='reportNot'>
                          <block s='reportEquals'>
                            <block s='reportListItem'>
                              <block var='Ycount'/>
                              <block s='reportListItem'>
                                <l>1</l>
                                <block var='Grid'/>
                              </block>
                            </block>
                            <l/>
                          </block>
                        </block>
                        <block s='reportNot'>
                          <block s='reportEquals'>
                            <block s='reportListItem'>
                              <block var='Ycount'/>
                              <block s='reportListItem'>
                                <l>1</l>
                                <block var='Grid'/>
                              </block>
                            </block>
                            <l>full</l>
                          </block>
                        </block>
                      </block>
                      <script>
                        <block s='doSetVar'>
                          <l>Winner</l>
                          <block s='reportListItem'>
                            <block var='Ycount'/>
                            <block s='reportListItem'>
                              <l>1</l>
                              <block var='Grid'/>
                            </block>
                          </block>
                        </block>
                      </script>
                    </block>
                  </script>
                </block>
                <block s='doChangeVar'>
                  <l>Ycount</l>
                  <l>1</l>
                </block>
              </script>
            </block>
          </script>
        </block>
        <block s='doIf'>
          <block s='reportEquals'>
            <block var='Winner'/>
            <l>F</l>
          </block>
          <script>
            <block s='doIf'>
              <block s='reportAnd'>
                <block s='reportEquals'>
                  <block s='reportListItem'>
                    <l>1</l>
                    <block s='reportListItem'>
                      <l>1</l>
                      <block var='Grid'/>
                    </block>
                  </block>
                  <block s='reportListItem'>
                    <l>2</l>
                    <block s='reportListItem'>
                      <l>2</l>
                      <block var='Grid'/>
                    </block>
                  </block>
                </block>
                <block s='reportEquals'>
                  <block s='reportListItem'>
                    <l>2</l>
                    <block s='reportListItem'>
                      <l>2</l>
                      <block var='Grid'/>
                    </block>
                  </block>
                  <block s='reportListItem'>
                    <l>3</l>
                    <block s='reportListItem'>
                      <l>3</l>
                      <block var='Grid'/>
                    </block>
                  </block>
                </block>
              </block>
              <script>
                <block s='doIf'>
                  <block s='reportAnd'>
                    <block s='reportNot'>
                      <block s='reportEquals'>
                        <block s='reportListItem'>
                          <l>1</l>
                          <block s='reportListItem'>
                            <l>1</l>
                            <block var='Grid'/>
                          </block>
                        </block>
                        <l/>
                      </block>
                    </block>
                    <block s='reportNot'>
                      <block s='reportEquals'>
                        <block s='reportListItem'>
                          <l>1</l>
                          <block s='reportListItem'>
                            <l>1</l>
                            <block var='Grid'/>
                          </block>
                        </block>
                        <l>full</l>
                      </block>
                    </block>
                  </block>
                  <script>
                    <block s='doSetVar'>
                      <l>Winner</l>
                      <block s='reportListItem'>
                        <l>1</l>
                        <block s='reportListItem'>
                          <l>1</l>
                          <block var='Grid'/>
                        </block>
                      </block>
                    </block>
                  </script>
                </block>
              </script>
            </block>
          </script>
        </block>
        <block s='doIf'>
          <block s='reportEquals'>
            <block var='Winner'/>
            <l>F</l>
          </block>
          <script>
            <block s='doIf'>
              <block s='reportAnd'>
                <block s='reportEquals'>
                  <block s='reportListItem'>
                    <l>1</l>
                    <block s='reportListItem'>
                      <l>3</l>
                      <block var='Grid'/>
                    </block>
                  </block>
                  <block s='reportListItem'>
                    <l>2</l>
                    <block s='reportListItem'>
                      <l>2</l>
                      <block var='Grid'/>
                    </block>
                  </block>
                </block>
                <block s='reportEquals'>
                  <block s='reportListItem'>
                    <l>2</l>
                    <block s='reportListItem'>
                      <l>2</l>
                      <block var='Grid'/>
                    </block>
                  </block>
                  <block s='reportListItem'>
                    <l>3</l>
                    <block s='reportListItem'>
                      <l>1</l>
                      <block var='Grid'/>
                    </block>
                  </block>
                </block>
              </block>
              <script>
                <block s='doIf'>
                  <block s='reportAnd'>
                    <block s='reportNot'>
                      <block s='reportEquals'>
                        <block s='reportListItem'>
                          <l>1</l>
                          <block s='reportListItem'>
                            <l>3</l>
                            <block var='Grid'/>
                          </block>
                        </block>
                        <l/>
                      </block>
                    </block>
                    <block s='reportNot'>
                      <block s='reportEquals'>
                        <block s='reportListItem'>
                          <l>1</l>
                          <block s='reportListItem'>
                            <l>3</l>
                            <block var='Grid'/>
                          </block>
                        </block>
                        <l>full</l>
                      </block>
                    </block>
                  </block>
                  <script>
                    <block s='doSetVar'>
                      <l>Winner</l>
                      <block s='reportListItem'>
                        <l>1</l>
                        <block s='reportListItem'>
                          <l>3</l>
                          <block var='Grid'/>
                        </block>
                      </block>
                    </block>
                  </script>
                </block>
              </script>
            </block>
          </script>
        </block>
        <block s='doReport'>
          <block var='Winner'/>
        </block>
      </script>
    </block-definition>
    <block-definition s='Fill %&apos;X&apos; %&apos;Y&apos; with empty spaces' category='other' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'/>
        <input type='%s'/>
      </inputs>
      <script>
        <block s='doDeclareVariables'>
          <list>
            <l>XCount</l>
            <l>YCount</l>
          </list>
        </block>
        <block s='doSetVar'>
          <l>XCount</l>
          <l>1</l>
        </block>
        <block s='doSetVar'>
          <l>YCount</l>
          <l>1</l>
        </block>
        <block s='doRepeat'>
          <l>3</l>
          <script>
            <block s='doRepeat'>
              <l>3</l>
              <script>
                <block s='doIf'>
                  <block s='reportEquals'>
                    <block s='reportListItem'>
                      <block s='reportSum'>
                        <block var='XCount'/>
                        <block s='reportProduct'>
                          <block s='reportDifference'>
                            <block var='X'/>
                            <l>1</l>
                          </block>
                          <l>3</l>
                        </block>
                      </block>
                      <block s='reportListItem'>
                        <block s='reportDifference'>
                          <l>10</l>
                          <block s='reportSum'>
                            <block var='YCount'/>
                            <block s='reportProduct'>
                              <block s='reportDifference'>
                                <block var='Y'/>
                                <l>1</l>
                              </block>
                              <l>3</l>
                            </block>
                          </block>
                        </block>
                        <block var='Total Grid'/>
                      </block>
                    </block>
                    <l/>
                  </block>
                  <script>
                    <block s='doReplaceInList'>
                      <block s='reportSum'>
                        <block var='XCount'/>
                        <block s='reportProduct'>
                          <block s='reportDifference'>
                            <block var='X'/>
                            <l>1</l>
                          </block>
                          <l>3</l>
                        </block>
                      </block>
                      <block s='reportListItem'>
                        <block s='reportDifference'>
                          <l>10</l>
                          <block s='reportSum'>
                            <block var='YCount'/>
                            <block s='reportProduct'>
                              <block s='reportDifference'>
                                <block var='Y'/>
                                <l>1</l>
                              </block>
                              <l>3</l>
                            </block>
                          </block>
                        </block>
                        <block var='Total Grid'/>
                      </block>
                      <l>done</l>
                    </block>
                  </script>
                </block>
                <block s='doChangeVar'>
                  <l>XCount</l>
                  <l>1</l>
                </block>
              </script>
            </block>
            <block s='doSetVar'>
              <l>XCount</l>
              <l>1</l>
            </block>
            <block s='doChangeVar'>
              <l>YCount</l>
              <l>1</l>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='All Grid Locations %&apos;size&apos;' category='other' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'/>
      </inputs>
      <script>
        <block s='doWarp'>
          <script>
            <block s='up'/>
            <block s='gotoXY'>
              <l>-180</l>
              <l>-180</l>
            </block>
            <block s='doDeclareVariables'>
              <list>
                <l>Locations</l>
              </list>
            </block>
            <block s='doSetVar'>
              <l>Locations</l>
              <block s='reportNewList'>
                <list/>
              </block>
            </block>
            <block s='doRepeat'>
              <block var='size'/>
              <script>
                <block s='doRepeat'>
                  <block var='size'/>
                  <script>
                    <block s='doAddToList'>
                      <block s='reportNewList'>
                        <list>
                          <block s='xPosition'/>
                          <block s='yPosition'/>
                        </list>
                      </block>
                      <block var='Locations'/>
                    </block>
                    <block s='changeXPosition'>
                      <block s='reportQuotient'>
                        <l>360</l>
                        <block var='size'/>
                      </block>
                    </block>
                  </script>
                </block>
                <block s='setXPosition'>
                  <l>-180</l>
                </block>
                <block s='changeYPosition'>
                  <block s='reportQuotient'>
                    <l>360</l>
                    <block var='size'/>
                  </block>
                </block>
              </script>
            </block>
            <block s='doReport'>
              <block var='Locations'/>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
  </blocks>
  <variables>
    <variable name='Total Grid'>
      <list id='2331'>
        <item>
          <list struct='atomic' id='2332'>,,,,,,,,</list>
        </item>
        <item>
          <list struct='atomic' id='2333'>,,,O,,,O,,</list>
        </item>
        <item>
          <list struct='atomic' id='2334'>,,O,,,,,,</list>
        </item>
        <item>
          <list struct='atomic' id='2335'>,,X,X,,,,,</list>
        </item>
        <item>
          <list struct='atomic' id='2336'>,,,,,,,,,</list>
        </item>
        <item>
          <list struct='atomic' id='2337'>,,,,,,,,</list>
        </item>
        <item>
          <list struct='atomic' id='2338'>,,,,,,,X,</list>
        </item>
        <item>
          <list struct='atomic' id='2339'>,,,,,,,,</list>
        </item>
        <item>
          <list struct='atomic' id='2340'>,,,,,,,,</list>
        </item>
      </list>
    </variable>
    <variable name='Big Grid'>
      <list id='2341'>
        <item>
          <list struct='atomic' id='2342'>,,</list>
        </item>
        <item>
          <list struct='atomic' id='2343'>,,</list>
        </item>
        <item>
          <list struct='atomic' id='2344'>,,</list>
        </item>
      </list>
    </variable>
    <variable name='Turn'>
      <l>X</l>
    </variable>
    <variable name='SmallGridTurn'>
      <l>4</l>
    </variable>
    <variable name='Locations'>
      <list struct='atomic' id='2345'/>
    </variable>
    <variable name='winner'>
      <l>X</l>
    </variable>
  </variables>
</project><media name="Ultimate Tic Tac Toe V.0.9" app="Snap! 5.0, http://snap.berkeley.edu" version="1"></media></snapdata>