<snapdata remixID="9004703"><project name="U2L4-Tic-Tac-Toe" app="Snap! 5.1, http://snap.berkeley.edu" version="1"><notes></notes><thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAAUg0lEQVR4Xu2de1zN9x/HXxUqSUlUKI0uqJnLhh+RS6zZ5r6xWe41K3czsmZXxQxzCesyc5sfG83lN6QY5todMeYaucUkpVLq93h/2vfbqXPqfHVOO53vPp9/cL6f7+fy+jy9P9/352pQXFxcDB64AjpSwIADqCPlebZMAQ4gB0GnCnAAdSo/z1wJwHPnzsHQ0BB169bVqTo5OTkwMDBAq1atdFoOnnn1KqAE4Pnz52Fqasoan2Bs06YNBD+FfqO/C3/m5ubi/v37sLe3F38TnrH+vVz8yp6piv/kyROWPw/yVUAJwKtXr5Z8HBoYIDY2FpcvX0bjxo0ZaAEBARgwYACMjY3h7++Pl156Cfn5+WjQoIGokCrIhIdVefbCCy/IV31eM2Un5MqVK6KVW7p0KTp37ozNmzdj4MCB2LRpE7KystCtWzf4+PggJCQE8+bNg4WFRRlrp6irosUkACmU/034t6pnLVq04M0kYwWULCBZPFWAVNSlVgTU88avCM6WLVvKWH5eNSUA//zzT1EV09x7OPRTOIyNSixXtQcDwGPUHDwuNBSzcnZ2rvZseQa6U0AJwIsXL4qluf5FD3RuaoJDjhNg/7IXrGyaaL2kZG1vXTwN4+Nr4JJzBkbNO+KG10IxHxcXF63nyROsOQooAXjhwgWxCzZc3hvn3SaibX8fVmLqJjNPH8WBz/xgKtEq2jS2Rp9NyUhOScGzZ89QVFQE6lYpradPn+Kvv/5iadeuXRu1fpkFZ1tzpPVZKJbB1dW15qjFS6J1BVQOwwi51FrphTzfnTCsbcI8XxofPDyyHbrZmrIoxc8KVBfI0BAoKirtRrffRUJyCvOW8/LyxGEe8rJpCId+j4iIwFvd3eHx+ACu9QoR323durXWK80TrDkKqByIFopXO7QvDGccxrVr19ChQwdmrRLHtMcbYTG4MdsbjScEw7SdJ+gLMevIdtTvORw5cdEw7zEEGeGBqN3UCX9tXQzncgASzGQBDxw4gI0bN2Lr1q0ICgrCiBEj0PXCClztGSwqxMcBaw4s1VESJQDPnj0rdrd1VvUDpv2Ghw8fwsnJCQ8ePEDyuI4igLbT16A4/wkK/7oNY+cOyD62E6atO6Pw4V1Y9BuF9E+HIv/aORFAGkukdISBbQKQwKauOS4ujs16ePwZiiue88U47u7u1VFvnmYNUUAJwDNnzohFM1njjaIpB9i/69Spw77Zzvh2QltLI6XiN5owH/fXf4Xip7mo1dAOtlNW4uanQ1k8soDxScmwsrJiXXCtWrXY7wcPHmTdL3XtBDeN+XW/tAqXun8ppv/iiy/WEKl4MapDASUAT58+LVpAAvDZ5NiS772/p+CsMy7gWXLJb1KCgZkFnvb1w830dBQWFrJXrK2t2Z9kARXH/whAzytrGICClWzbtq2UbHgcPVVACcCUlBQRtrph/VEQsL8MgHl/xOFoyCSYKhtBlRI0srZG93VxOHM2lT0nL9jGxka0gAKA9IOjoyN6XQvDxW6fi2Wg6T4e5KuAEoDJycli45uFv478D/bh559/Ru/evVkXmuDXFR6OJRbsWU4WUFzq7QoyGdQxRvHTfFE16oLjEpPQsGFD1gUL1u23334roywB2CctAhe6fiaWoV27dvJVn9dMeS44MTFRlMU88k3kvr+HzfXGx8eDZiUuBHiIToiN/xLU7dCHxc/6bQssvEYi+9humPcYinths1HH3gUPNoWwb0BFAMnpoHDo0CElAL1uROJ8l3ni7+Sk8CBfBZQsYEJCgljb+t8PwBO/XxEcHIzRo0ejadOmuDipu0ov2IS84BO7YeLaiXnFFt5jkf7JIORfPy8CSNavWbNmbEEDdb1kARWXbDVv3hz90tfiXOdPRAvYsWNH+arPa6ZsAWk4RAiWPwxC9oTd4sAxrc+7PLWnei/YuilsJy8v4wWfSkhkzgdBSN60YAEVvwEdHBzgfXsdzr7ysViGV155hTeTjBVQsoCnTp0Sq9tg3WBkjdtZpvr2ebdhcP6YdElMzZHZaRju3LnDHBAK9erVY38ePny4TDoEYP+7G3Dm5bni7506dZKeF4+pdwooAXjy5EmxElbrhyBzzC/iv8laFV1JRvw30yV7wdYNG6Jz5EmknjsHIyMjBqGZmRnreo8dO8YGockpobFA6p5fv7cRpzsGinnSekQe5KuAEoAnTpwQv78abhiKh6OjEBUVBS8vL5ibm+P8NC90b+3Ipt8KHtwGikocCsVgWNccRU8eiz+RE3IyPgGNGjViXXB2drb47UcQEoA03kdTfW/e/xEpHeaIZejSpYt81ec1U/4GJCAokIWy3jgMD3y2gTYIESTUdd6Y1a/UCZkaCrNXXmXxH8VsgoX3aGQf2gZzz7dwL2wW6ti3xv11nzEnRBHAx49L4VRsg+vXr2PAg81Ibj9bHKrp2rUrbyYZK6BkAY8ePSpan8Y/vo2MkT9h165dbJ6WhmHSZ3tX7AWf/BUmLi+j8MEtWPYfjxsfD8DTtD9EAGnJFY0F3rp1i0lafuU1LXoYnLkViS/NEp/R8n8e5KuAEoC///672Pg2m4fj7jtb2Dwwfb/RLrg7c19X6wXXbuwAm4ClZbzgE3HxbHMTdcG0uIHCpUuXMHbsWPb3mTNnon379hjy6CcktP1QLIOHh4d81ec1U+6CFT1Tuy3v4M6I/5aRydkoG7WvJkmWrtjEDLece7FddcIMCAEthNTUVNA2gEGDBrFlX8Meb0Oc+wzxeY8ePSTnxSPqnwJKFlBxdqLJ1ndx6+0fER0dzdbqkTPSr2UjnF7+keQV0Q2tGqBD2HGc++MPZknJCxZAFLpgWh9IgNKKmLdzonDKbbqopKenp/6pykssWQElABXnZ5v+NBI3h22EnZ0dmzajtXzpnwxGjw4la/QK0i+h+FnJChfFYFTfCs+ySpbaUyAn5PipOLYIgbrge/fuic/ou5C8X4KR/hyRuwMn20wTu+CePXtKrgyPqH8KKAFIS6SEYL/NB5feiABNhx05coQBdDuwP94Ii8WNwP6wm7EGZp1eY9Ef7V8Py9fGIevAFtT3HFYyF+zQChmRQUoA0qA0BbbHJDNTHANMOXEI7xoewfFWU8Qy0CIIHuSrgBKAtE9DCA7bR+GA+8eobWyCPn36YMGCBeh9dlPFXnDcPpg4tUfh/XRYvuGHG4Gv4+mNCyKAtPiUBqFp4xN1x9TlEoQENn0H5iXuwCjXIhxznSyWgfLlQb4KKAEYExMjdn/No0bDwNQSh5wCYFyvPvNis756S70XbOsIG//FuDmvdEX0sZOnYGtry7rg9PR0WFpaIi0tja2CZnuRH1zD69dDYdS8A466TBLLQAPgPMhXASUA165dy1a9kGVqsXM8bOoCBcVG+KOgITKKzODx2kjgSZ5kRQwMDXArLRmFhQVsZx0Fxb3H9O8WtR7CsVYme2bo0hNHHXwYgDdv3sS4ceMk58Uj6p8CSgDS9xktQKWlUbQlkk7KUgzXYrfjwuq5MDGUdlqClZUlvLZfwqm4eJYMzf1Wdt4LWce7d++yIZnhw4czq8uDfBXgB1TKt231omYcQL1oJvkWkgMo37bVi5pxAPWimeRbSA6gfNtWL2rGAdSLZpJvITmA8m1bvagZB1Avmkm+heQAyrdt9aJmHEC9aCb5FpIDKN+21YuacQD1opnkW0gOoHzbVi9qxgHUi2aSbyE5gPJtW72oGQewkmZ6qV0HvPpqyckPVQ3nUlPhpMFtT/l5eTD6+0ztqpYhLe06du4oPeOnqulUx3scwEpU7dWrNw4eLN2kVZUGWLVqNfz9P6jKq+ydtLQbcHCwr/L79GJw8ALMnTtHozSq62UOoAQA6YD1hlZWSqvDK3qVzr55kpsLm8aNIQAYvT8Gfb36iIeyq2vQI78fhUe3rrhx4yYDkA54JxhbtJB2fS2tPN8fEwvvV/txANWJXVOfK1rAVavWYNy4MTAxMam0uHTy14IFC/HVVyVXTQgAFhQUIDJyLSZO9FNb3ZiYWAYd3ZOnaAGTklNgXs+M7c+uLNB+mhkzP8SSxd8w4P+1FvC/W7ZgxPDhagWvqRHKd8Hh4ZEYNcoHxsalR4solp1OkF2y5FsEBZUesKnYBefm5mH9hg1438+3wirv2bOX3RbQunUrlV1wYmISzOrVg6tLxbeITps+A4u+Xsju3/tXd8FyA5AaMyw8An6+E5QAysl5gm+XLcPHc0sP11S0gMILtC01IiISkyYFKKWxPSoKbm3aQPGCRlXfgAQhHZXnogLCyZOnYOnSJeJlQBxAGVlAgZjlK0IxKeADdqIDhcePs7Fy5UoEBip/6KtyQgoLn2HFylBMn1Z6AsSuXbvh7OzEjsFTDBU5IfHxCahfv74IIXW7U6ZMxbJl34rlEtLhXXBN7WPVlKsyL3jFilC8/74vnjzJxXdhYZj90SyVqVXkBefn57NvQn//idi7bx/smzWDm5ubUhqVecEJiUniN+HMD2fh64ULxG5XMSEOoAwBpCqFLPgaeXm5+PyzTyusYWXDMNQdf/TRHAayKvgoUXXDMGQJw8PDERq6sky3ywEEIMdvQKFhs3NyMH9+MJrY2cHXd0KF3nFlAMYeOIgmTZqwO/MCKhgrrAxAOupu+oyZGDtmDDu/u2XLFir/I3ALKDMLSN7uom+W4NN5Qaxm34WFY8zoUeLRI4rVrQjAffui0dyxOVq5urLzctat28AsYflQGYBTp07H4sWLmOVLSkpm3rGLs/IQDQdQRgCSt7tk6VJ8ElR6mQ7zjsPCmSVUvHhHlRdMv0VF/QK6iNvV1UVUhoZoIr9fy5wbKU5IwKTJ+PbbpaitME1XAqEZXMpN/XEAZQIgDTKT8xEYOFtljUJDadptYhkIy1vAX3bsYJ4uWb7ygWY7lq9YiRnTp4mPVFlA8nYJPsELV0wnISGRDdEows0BlAGAmZmPEBYWho8q8HaFKoauWg3fCePZ+YflLSANMtvb28PdXdnbFd6na8wiIr+H/wcT2U+KANJQy4cfzsKCBSEqvV0hDYKQLKEAOQdQzwGke1JWrFiJOXNUW77y1SMr6ec3gX0TChYwJjYWtjY2cHcvOd64skDfhGt/WI8PJvqJAJLDUdlQS/n0aLDavL45nJ2c+FScOsFr6nNhHLCgsLDMt9bzlFcAMC8/HyZ/n48o5X1aTEBXYwgWUDjQXcq7QhwhDW4Bn0e1GhSXL8eq/sao1uVY+j4O6OzsgvfeG6lRK9D9y5rceZz56BEsLSw0KsPRo8cRHb1XozSq62UOYCXK9nvVG9H7NGu4sLAI9j1YPlD3SBd305QcjePRvK7iBT5CfHUzIVLACAz8GCEh86VE/cfjcAD/YQAJvG3btiMjIwODBg9G0yZ2oAWsu3f/D4+zczB61HtlBrQ5gBr8n1i9ejU7CV+TEBISosnrGr2rbQtI43y0CmbqlMkqx/CosFu2/oz//KcLHOybsbJzADVqQv1+WdsArlkTxqbbys+WlFeJlu/36unJxvo4gPrNkEal1yaA4RGRbL5YWKVcWcFoyGXep5/jyy8+4wBq1IJ6/rK2ABw/fiybYps+bapkRS5fvoKmTZvg3r0MjXfF/WudEMlq19CI2gJw5Mh3QJuS6HYoqYG+F1NOn0Eja2sOoFTR5BZPWwAOGPgmA4lmNqQGmnrbu3cfm7rTdF8wt4BSVa9h8bQF4PDhb7FLGmm8T2qg4ZrjJ07Cwd6eAyhVNLnF0xaAtJ94x85dGDpksGSJ7ty9i7qmpqBVONwCSpZNXhG1BSDNhHyzeAlmzpiudghGUJB23k2e5C+ejKCJsrwL1kQ9Hb6rTQDJCdm1638YMmSQ2hpdunQZBoaGaNniBT4Mo1YtGUfQJoAk0/W0NHZZd18vrwot4YWLF3H2zFkMHTqEKcsHomUMmLqqaRtAyi8r6zFWr16DAQPehKNjc7abjlZB0+3x27ZHwdvbG85OLcWicQDVtZKMn1cHgIJcT58WIDEpCYkJ8Wjdxg0vd+wIc/N6SmpyAGUMmLqq9erdB3v3/KouWqXP6fQDmgmpaqDj2ez/XphQ1TSCguZh0aKFVX29Wt+r1uVY1VryfyDxvn37Yf/+aI1yqmg9oNREtWEB584NQnDwV1Kz/EfjcQArkbu6AKRZjqtXryElJQV37txGfQsLuLu5o41bG9T5+0g1oVgcwH/0/0PNyqw6AKQhll/37IGfry9MTIzLVHjjps1o1qwpenr20KoTwi1gzeJKcmm0DeDhw7/D1tZG5bl+QqFomf6y5SvEkxe4BZTcXPKLqE0A6VSFs2dT0aVLZ7VCZWTcZ+OFHh7dtDIOyC2gWslrZgRtAvjl/GAEzQ2UPBW3evV37Dxp4ZByTRTiAGqing7f1RaAY8eOxomTp9Ddo5vk2tBGpdy8POTl5mm8GIEDKFn2mhVRWwAOGzaEbbt83uVY9M1IZ/5puhqGA1izuJJcGm0BOHDgm7CuyoLUfdFwd3PjAEpuMZlF1BaAPj7vITMzE3Z2tpIVKigoROr587CytOQASlZNZhG1BaCv73jMnj0HX38tfTosOeU02rRuhTt37nIAZcaV5OpoC0BakLovej88e3RXe9MSFY62ZU6dNg3Lly3jwzCSW0uGEbUJIMkTErKQHXBpZFRyv0hF4fu1P2CUjw9q1So9nk0TebkTool6OnxX2wBSVRYtWowJE8ahQYMGSjWjgynXb9iIke++wzYxUeAzIToEQNdZVweAVKf9+2NAK587dnwZjaytkPU4G8lJSex0rPLHwXEAdU2BDvOvLgCfp0ocwOdRS2ZxbWxs0K5dO41qdfPmTTRrVnLSVVUCdcvqrohVly6VITU1VV00nTzn6wF1IjvPVFCAA8hZ0KkCHECdys8z5wByBnSqAAdQp/LzzDmAnAGdKsAB1Kn8PHMOIGdApwpwAHUqP8+cA8gZ0KkCHECdys8z5wByBnSqAAdQp/LzzDmAnAGdKsAB1Kn8PHMOIGdApwpwAHUqP8+cA8gZ0KkC/wdf+nI+MMh75AAAAABJRU5ErkJggg==</thumbnail><stage name="Stage" width="480" height="360" costume="0" color="255,255,255,1" tempo="60" threadsafe="false" volume="100" pan="0" lines="round" ternary="true" codify="false" inheritance="false" sublistIDs="false" scheduled="false" id="1"><pentrails>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAOhUlEQVR4Xu3VwQkAAAjEMN1/abewn7jAQRC64wgQIECAAIF3gX1fNEiAAAECBAiMAHsCAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQIHLFxAWmhEwHPAAAAAElFTkSuQmCC</pentrails><costumes><list struct="atomic" id="2"></list></costumes><sounds><list struct="atomic" id="3"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites><watcher var="X&apos;s turn?" style="normal" x="4.72916666666606" y="4.729166666666664" color="243,118,29" hidden="true"/><watcher var="board" style="normal" x="10" y="10" color="243,118,29" extX="80" extY="70"/><watcher var="square number" style="normal" x="-18" y="159.000002" color="243,118,29" hidden="true"/><sprite name="Square" idx="1" x="-144.22026431718058" y="-10.140969162995598" heading="90" scale="1" volume="100" pan="0" rotation="0" draggable="true" costume="1" color="80,80,80,1" pen="tip" id="11"><costumes><list id="12"><item><costume name="Empty" center-x="26" center-y="26" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAAAx0lEQVRoQ+2awQ2CUBAFlybwSqzEWiTfoozWwhViONiRiYkFvMsEf4b75LEzHBmqs2eoqktVLT3cNU3n/XvQdW7L83H/65vW7VW31t4edNSMFjpqmd97WchCsAE/OVh4PGehWBkMWAgWHs9ZKFYGAxaChcdzFoqVwYCFYOHxnIViZTBgIVh4PGehWBkMWAgWHs9ZKFYGAxaChcdzFoqVwYCFYOHxnIViZTBgIVh4PGehWBkMWAgWHs9ZKFYGA30X6uWPxnE8bR/Jtp2GcsP1ZgAAAABJRU5ErkJggg==" id="13"/></item><item><costume name="X" center-x="26" center-y="26" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAACBUlEQVRoQ+3aO0/CUBQH8MMGIRFnooaRL0BgdCIGqQnxASgQjMjqc3A04maM38KwOTqqm8YEFx+rr0QdcSMupiQ1olTOvfec3hZha9LH/d1/e8M/rQ8AIoaR2QoG/X7w+K/V+rj2AcB4LBY/LpUXPQ16e32Bq0bjoQ3KZvNH9frhsJcDOr+4hN1abQBybYj/M6HHp2cYGx1xVSp2Y0IltFSpQjgchtrOtitQN7d3YKTTsLd/ANOZqY4xoUDN5jtUlqsQjUa1oyzMQqHYdSwokDkFbkD1wpjjRIN0ozAYYZAuFBYjBXIaJYKRBjmFEsUogbhRMhhlEBdKFkMCokapYMhAVChVDClIFUWBIQfJoqgwLCBRFCWGDYRFUWNYQb1QHBh2kB2KC+MI6Ccql8u2y5ldn+loaxIbQvVB4vxfh5h9qlAswdnpCaysrrEVRcdA5m02mUpBIBCAmdk5b4O+PzObG+usdZ49oW4LAGedZwX9tZpxodhAmKWZA8UCwmCs5Y8aRQ4SwXCgSEEyGGoUGUgFQ4kiAVFgqFDKIEoMBUoJxIFRRUmDODEqKCmQExhZlDDISYwMSgikAyOKQoN0YkRQKJAbMFgUCpRMTkA8kWBrmaLV3vpDm8vPy700duNrfRMVCg39mgtUQqIzqHP/AUjn7GOu3d8J9dsHgBEAKGNi9cA+958uiHxCYDA7+gAAAABJRU5ErkJggg==" id="14"/></item><item><costume name="O" center-x="26" center-y="26" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAAEYElEQVRoQ+2aS0wTURSG/66Vx0oXCCIK1MfCFoxuFERDjOArahR8xKgFJS4kRuOGUsrGIBUXxgfFxKhA8REfYGKIiujCB9BqIoiSaAQV3fHQNeaMuUlLZzp3Zu4URCZpuui9Z853/jPn3numFkyxywIgG0DbVOBKTk7pkoD2H3C0Xa6r/aeZXr7qQJHD8XYaaLLKOK0QrzKtj57A7w+g7+MHtD15jM+fP4VN3bZ9BxISErDUZkfO6iwkJc7hNa84TqhC/QNf4fXWof76NWRkLpM+drsN1vQ0WWfp5r0fPuJNwI/79+5K43cWFGLrlo26wYQABYMUHSpBYcEOXdG+fec+fI0NGB4aQvHhEl1ghoGuXK2H2+UEgRwudiAuLlZ3dNlEStfqqiokJiWhvNypKTi6gYaHR1DuqkBPdzfclZVYsXyZYZBgA2T/wiUvai+ex8VaL3LX5nDZ1wVENzvoKEJsbCzOeKqFqKLkLaXh8WOlOO2p4UpBzUAMxmq1otLt4oqa0UHdPe+xIT+fC0oz0IGDRYiJicHZGo9RPzXNJ6glixfhxcvXEdNbE9C585fQ/rQNdd5aU9NMLf0CgYDi/bmBWITedfdg8aKFmqIrcvDR0mOSOaUM4QaiVLPZM3CkpFikf5pt0TNss9nQ0OiTTT0uIBpUWLATkaTW7JmBCZT6AX8X5I46XEAk84LUtAlXh8WAqdTc0hKW/qpAtK2Zm5SIoaHhCSkESkKeqvLg96/RsKVDFYi2NrR5jHaZVstIKlKlR0vR2vowZKgqEKXbylVZXKu0mhOif09JmY/xaacKJDdJtGN67ckFWxXIYrFgbGxM7z1NnUfVjq7gpSQiEP3o8Xhw84bPVMf0GqdjRpPPF1K+VYG8Xq9svdfrhMh55Px4/6aBREbYqC3NCinVeqOOiJpPh7/nz9pD1sj/q8pRJHNz15nSMxChEp0A1uflhyz6qgqVOV2YvyAV+/buEuGDUBu06D9tbw/pCqkCsV7ZZFuLWKtL816Oturx8XH40j+gqT8mVAoZY5Q5M2bG4OSJvydYdqkqRAOVJpvttJL9SEHmAqIzUXZW1qQ6sf78MSjbRuMCYirRd7R6cUrqsAOn0iPADcRUUmpORCv9qFSnpqWHPTuaniE2mLVlJ6pZQsfurs6OiH1BboUYFBWI3t7eqDcbWTDlGiOaq9z4dIo2FC8M+alZofFKuVzlpnZS6VR6proqrHeg9MzqBiKDlNP0/sbpcgvfGlERqqhwY6C/HzVna7iDZgiISewsK5PetjkcDsMvvmjRvFbfKKmi562gYSCCCnZidc6asB0wT0knRRoamyTFyYbe4AgBYg4T2J17zXjQ0iyV142bNkst5MwMuzRkoTVd6r7SwXF09Be+fR9EX1+fNJY+u3bvQV5eniGVhQIFK0ER7+j0Sw7TfxVGRkZw62aTNGTevBRJBXpxxoBFvaM1DYgnzcwYMw1kRlRF2pzaCk2VfzTOmjX71R8xTomk2qlpUgAAAABJRU5ErkJggg==" id="15"/></item></list></costumes><sounds><list struct="atomic" id="16"></list></sounds><blocks></blocks><variables></variables><scripts><script x="11.999999000000003" y="10"><block s="receiveInteraction"><l><option>clicked</option></l><comment w="156" collapsed="false">This demonstration script will not be part of your actual project.</comment></block><block s="doIf"><block s="reportEquals"><block s="reportAttributeOf"><l><option>costume name</option></l><block s="reportGet"><l><option>self</option></l></block></block><l>Empty</l></block><script><block s="doIfElse"><block var="X&apos;s turn?"/><script><block s="doSwitchToCostume"><l>X</l></block><block s="doReplaceInList"><block var="square number"/><block var="board"/><l>X</l></block><block s="doSetVar"><l>X&apos;s turn?</l><block s="reportBoolean"><l><bool>false</bool></l></block></block></script><script><block s="doSwitchToCostume"><l>O</l></block><block s="doReplaceInList"><block var="square number"/><block var="board"/><l>O</l></block><block s="doSetVar"><l>X&apos;s turn?</l><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block></script></block></script><script x="345.999999" y="145"><block s="receiveGo"></block><custom-block s="create board"></custom-block></script><script x="15.999999000000003" y="308"><block s="receiveKey"><l><option>space</option></l></block><block s="removeClone"><comment w="118" collapsed="false">This affects only clones, not the original sprite.</comment></block></script><script x="277.999999" y="269"><block s="show"></block><custom-block s="for each %upvar of %l %cs"><l>game</l><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><custom-block s="stat of 3 %l"><l/></custom-block></autolambda><list></list></block><list><custom-block s="tictactoe wina"></custom-block></list></custom-block><script><block s="doIfElse"><block s="reportListContainsItem"><block var="game"/><l>Empty</l></block><script><block s="doSayFor"><l>No one has won yet</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportAnd"><block s="reportListContainsItem"><block var="game"/><l>X</l></block><block s="reportListContainsItem"><block var="game"/><l>O</l></block></block><script><block s="doSayFor"><l>This Game is a Draw</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportListContainsItem"><block var="game"/><l>X</l></block><script><block s="doSayFor"><l>X has won the game</l><l>2</l></block></script><script><block s="doSayFor"><l>O has won the game</l><l>2</l></block></script></block></script></block></script></block></script></custom-block></script></scripts></sprite></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="label %&apos;text&apos; of size %&apos;size&apos;" type="command" category="pen"><comment x="0" y="0" w="90" collapsed="false">LABEL will stamp text on the stage at the given font size. The direction of the text is the direction the sprite is facing, and color will match the pen color.</comment><header></header><code></code><translations></translations><inputs><input type="%txt">Hello!</input><input type="%n">12</input></inputs><script><block s="doRun"><block s="reportJSFunction"><list><l>text</l><l>size</l></list><l>var stage = this.parentThatIsA(StageMorph),&#xD;    context = stage.penTrails().getContext(&apos;2d&apos;),&#xD;    rotation = radians(this.direction() - 90),&#xD;    trans = new Point(&#xD;      this.center().x - stage.left(),&#xD;      this.center().y - stage.top()&#xD;    ),&#xD;    isWarped = this.Warped,&#xD;    len,&#xD;    pos;&#xD;&#xD;if (isWarped) {endWarp(); }&#xD;context.save();&#xD;context.font = size + &apos;px monospace&apos;;&#xD;context.textAlign = &apos;left&apos;;&#xD;context.textBaseline = &apos;alphabetic&apos;;&#xD;context.fillStyle = this.color.toString();&#xD;len = context.measureText(text).width;&#xD;trans = trans.multiplyBy(1 / stage.scale);&#xD;context.translate(trans.x, trans.y);&#xD;context.rotate(rotation);&#xD;context.fillText(text, 0, 0);&#xD;context.translate(-trans.x, -trans.y);&#xD;context.restore();&#xD;pos = new Point(&#xD;  len * Math.sin(radians(this.direction())),&#xD;  len * Math.cos(radians(this.direction())));&#xD;pos = pos.add(new Point(this.xPosition(), this.yPosition()));&#xD;this.gotoXY(pos.x, pos.y, false);&#xD;this.changed();&#xD;if (isWarped) {this.startWarp(); }&#xD;stage.changed();</l></block><list><block var="text"/><block var="size"/></list></block></script></block-definition><block-definition s="map %&apos;function&apos; over %&apos;lists&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%repRing"></input><input type="%mult%l"></input></inputs><script><block s="doWarp"><script><block s="doDeclareVariables"><list><l>mapone</l><l>mapmany</l></list></block><block s="doSetVar"><l>mapone</l><block s="reifyScript"><script><block s="doIf"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doReport"><block s="reportCONS"><block s="evaluate"><block var="function"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><block s="evaluate"><block var="mapone"/><list><block s="reportCDR"><block var="data"/></block></list></block></block></block></script><list><l>data</l></list></block></block><block s="doSetVar"><l>mapmany</l><block s="reifyScript"><script><block s="doIf"><custom-block s="empty? %l"><block s="reportListItem"><l>1</l><block var="data lists"/></block></custom-block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doReport"><block s="reportCONS"><block s="evaluate"><block var="function"/><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><block s="reportListItem"><l>1</l><l/></block></autolambda><list></list></block><list><block var="data lists"/></list></custom-block></block><block s="evaluate"><block var="mapmany"/><list><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><block s="reportCDR"><l/></block></autolambda><list></list></block><list><block var="data lists"/></list></custom-block></list></block></block></block></script><list><l>data lists</l></list></block></block><block s="doIfElse"><custom-block s="empty? %l"><block s="reportCDR"><block var="lists"/></block></custom-block><script><block s="doReport"><block s="evaluate"><block var="mapone"/><list><block s="reportListItem"><l>1</l><block var="lists"/></block></list></block></block></script><script><block s="doReport"><block s="evaluate"><block var="mapmany"/><list><block var="lists"/></list></block></block></script></block></script></block></script></block-definition><block-definition s="empty? %&apos;data&apos;" type="predicate" category="lists"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportEquals"><block var="data"/><block s="reportNewList"><list></list></block></block></block></script></block-definition><block-definition s="keep items such that %&apos;pred&apos; from %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%predRing"></input><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doIf"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doIfElse"><block s="evaluate"><block var="pred"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><script><block s="doReport"><block s="reportCONS"><block s="reportListItem"><l>1</l><block var="data"/></block><custom-block s="keep items such that %predRing from %l"><block var="pred"/><block s="reportCDR"><block var="data"/></block></custom-block></block></block></script><script><block s="doReport"><custom-block s="keep items such that %predRing from %l"><block var="pred"/><block s="reportCDR"><block var="data"/></block></custom-block></block></script></block></script></block></script></block-definition><block-definition s="combine with %&apos;function&apos; items of %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%repRing"></input><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doIf"><custom-block s="empty? %l"><block s="reportCDR"><block var="data"/></block></custom-block><script><block s="doReport"><block s="reportListItem"><l>1</l><block var="data"/></block></block></script></block><block s="doReport"><block s="evaluate"><block var="function"/><list><block s="reportListItem"><l>1</l><block var="data"/></block><custom-block s="combine with %repRing items of %l"><block var="function"/><block s="reportCDR"><block var="data"/></block></custom-block></list></block></block></script></block></script></block-definition><block-definition s="if %&apos;test&apos; then %&apos;true&apos; else %&apos;false&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%b"></input><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doIfElse"><block var="test"/><script><block s="doReport"><block s="evaluate"><block var="true"/><list></list></block></block></script><script><block s="doReport"><block s="evaluate"><block var="false"/><list></list></block></block></script></block></script></block-definition><block-definition s="for %&apos;i&apos; = %&apos;start&apos; to %&apos;end&apos; %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%upvar"></input><input type="%n">1</input><input type="%n">10</input><input type="%cs"></input></inputs><script><block s="doDeclareVariables"><list><l>step</l><l>tester</l></list></block><block s="doIfElse"><block s="reportGreaterThan"><block var="start"/><block var="end"/></block><script><block s="doSetVar"><l>step</l><l>-1</l></block><block s="doSetVar"><l>tester</l><block s="reifyReporter"><autolambda><block s="reportLessThan"><block var="i"/><block var="end"/></block></autolambda><list></list></block></block></script><script><block s="doSetVar"><l>step</l><l>1</l></block><block s="doSetVar"><l>tester</l><block s="reifyReporter"><autolambda><block s="reportGreaterThan"><block var="i"/><block var="end"/></block></autolambda><list></list></block></block></script></block><block s="doSetVar"><l>i</l><block var="start"/></block><block s="doUntil"><block s="evaluate"><block var="tester"/><list></list></block><script><block s="doRun"><block var="action"/><list></list></block><block s="doChangeVar"><l>i</l><block var="step"/></block></script></block></script></block-definition><block-definition s="join words %&apos;words&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%mult%txt"></input></inputs><script><block s="doWarp"><script><block s="doIf"><custom-block s="empty? %l"><block s="reportCDR"><block var="words"/></block></custom-block><script><block s="doReport"><block s="reportListItem"><l>1</l><block var="words"/></block></block></script></block><block s="doIf"><block s="reportEquals"><l></l><block s="reportListItem"><l>1</l><block var="words"/></block></block><script><block s="doReport"><custom-block s="join words %mult%txt"><block s="reportCDR"><block var="words"/></block></custom-block></block></script></block><block s="doIf"><block s="reportEquals"><l></l><block s="reportListItem"><l>2</l><block var="words"/></block></block><script><block s="doReport"><custom-block s="join words %mult%txt"><block s="reportCONS"><block s="reportListItem"><l>1</l><block var="words"/></block><block s="reportCDR"><block s="reportCDR"><block var="words"/></block></block></block></custom-block></block></script></block><block s="doReport"><block s="reportJoinWords"><list><block s="reportListItem"><l>1</l><block var="words"/></block><l> </l><custom-block s="join words %mult%txt"><block s="reportCDR"><block var="words"/></block></custom-block></list></block></block></script></block></script><scripts><script x="229.00000300000002" y="196.77778077777774"><block s="reportJoinWords"><list><l></l><l></l></list></block></script></scripts></block-definition><block-definition s="list $arrowRight sentence %&apos;data&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doReport"><custom-block s="join words %mult%txt"><block var="data"/></custom-block></block></script></block></script></block-definition><block-definition s="sentence $arrowRight list %&apos;text&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%txt"></input></inputs><script><block s="doWarp"><script><block s="doReport"><block s="reportTextSplit"><block var="text"/><l><option>whitespace</option></l></block></block></script></block></script></block-definition><block-definition s="catch %&apos;tag&apos; %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%upvar"></input><input type="%cs"></input></inputs><script><block s="doCallCC"><block s="reifyScript"><script><block s="doSetVar"><l>tag</l><block var="cont"/></block><block s="doRun"><block var="action"/><list></list></block></script><list><l>cont</l></list></block></block><custom-block s="ignore %s"><l>3</l></custom-block></script></block-definition><block-definition s="throw %&apos;cont&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s">catchtag</input></inputs><script><block s="doRun"><block var="cont"/><list></list></block></script></block-definition><block-definition s="catch %&apos;tag&apos; %&apos;value&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%upvar"></input><input type="%anyUE"></input></inputs><script><block s="doCallCC"><block s="reifyScript"><script><block s="doSetVar"><l>tag</l><block var="cont"/></block><block s="doReport"><block s="evaluate"><block var="value"/><list></list></block></block></script><list><l>cont</l></list></block></block></script></block-definition><block-definition s="throw %&apos;tag&apos; %&apos;value&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s">catchtag</input><input type="%s"></input></inputs><script><block s="doRun"><block var="tag"/><list><block var="value"/></list></block></script></block-definition><block-definition s="for each %&apos;item&apos; of %&apos;data&apos; %&apos;action&apos;" type="command" category="lists"><header></header><code></code><translations></translations><inputs><input type="%upvar"></input><input type="%l"></input><input type="%cs"></input></inputs><script><block s="doUntil"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doSetVar"><l>item</l><block s="reportListItem"><l>1</l><block var="data"/></block></block><block s="doRun"><block var="action"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><block s="doSetVar"><l>data</l><block s="reportCDR"><block var="data"/></block></block></script></block></script></block-definition><block-definition s="if %&apos;test&apos; do %&apos;action&apos; and pause all $pause-1-255-220-0" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%boolUE"></input><input type="%cs"></input></inputs><script><block s="doDeclareVariables"><list><l>breakpoint</l></list></block><block s="doIf"><block s="evaluate"><block var="test"/><list></list></block><script><block s="doSetVar"><l>breakpoint</l><block var="test"/></block><block s="doShowVar"><l>breakpoint</l></block><block s="doRun"><block var="action"/><list></list></block><block s="doPauseAll"></block><block s="doHideVar"><l></l></block></script></block></script></block-definition><block-definition s="word $arrowRight list %&apos;word&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%txt"></input></inputs><script><block s="doWarp"><script><block s="doReport"><block s="reportTextSplit"><block var="word"/><l><option>letter</option></l></block></block></script></block></script></block-definition><block-definition s="ignore %&apos;x&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs></block-definition><block-definition s="tell %&apos;sprite&apos; to %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s">Sprite</input><input type="%cs"></input></inputs><script><block s="doRun"><block s="reportAttributeOf"><block var="action"/><block var="sprite"/></block><list></list></block></script></block-definition><block-definition s="ask %&apos;sprite&apos; for %&apos;expression&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%s">Sprite</input><input type="%repRing"></input></inputs><script><block s="doReport"><block s="evaluate"><block s="reportAttributeOf"><block var="expression"/><block var="sprite"/></block><list></list></block></block></script></block-definition><block-definition s="list $arrowRight word %&apos;list&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doReport"><block s="reportJoinWords"><block var="list"/></block></block></script></block></script></block-definition><block-definition s="makeBoard" type="command" category="control"><header></header><code></code><translations></translations><inputs></inputs><script><custom-block s="for %upvar = %n to %n %cs"><l>columns</l><l>1</l><l>3</l><script><custom-block s="for %upvar = %n to %n %cs"><l>rows</l><l>1</l><l>3</l><script><block s="createClone"><l><option>myself</option></l></block><block s="changeXPosition"><l>50</l></block></script></custom-block><block s="changeXPosition"><l>-150</l></block><block s="changeYPosition"><l>-50</l></block></script></custom-block></script></block-definition><block-definition s="tictactoe wina" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportNewList"><list><l>1</l><l>2</l><l>3</l></list></block><block s="reportNewList"><list><l>4</l><l>5</l><l>6</l></list></block><block s="reportNewList"><list><l>3</l><l>5</l><l>7</l></list></block><block s="reportNewList"><list><l>7</l><l>8</l><l>9</l></list></block><block s="reportNewList"><list><l>3</l><l>6</l><l>9</l></list></block><block s="reportNewList"><list><l>1</l><l>4</l><l>7</l></list></block><block s="reportNewList"><list><l>1</l><l>5</l><l>9</l></list></block><block s="reportNewList"><list><l>2</l><l>5</l><l>8</l></list></block></list></block></block></script></block-definition><block-definition s="create board" type="command" category="control"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doSwitchToCostume"><l>Empty</l></block><block s="doWait"><l>.1</l><comment w="181.33333333333334" collapsed="true">Wait for old clones to be deleted.</comment></block><block s="gotoXY"><l>0</l><l>0</l></block><block s="show"></block><custom-block s="makeBoard"></custom-block><block s="hide"></block><block s="doSetVar"><l>X&apos;s turn?</l><block s="reportBoolean"><l><bool>true</bool></l><comment w="90" collapsed="true">X plays first.</comment></block></block><block s="doSetVar"><l>board</l><block s="reportNewList"><list><l>Empty</l><l>Empty</l><l>Empty</l><l>Empty</l><l>Empty</l><l>Empty</l><l>Empty</l><l>Empty</l><l>Empty</l></list></block></block></script></block-definition><block-definition s="stat of 3 %&apos;list&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportListItem"><l></l><block var="board"/></block></autolambda><list></list></block><block var="list"/></block></block></script></block-definition></blocks><variables><variable name="X&apos;s turn?"><bool>false</bool></variable><variable name="board"><list struct="atomic" id="840">Empty,Empty,Empty,Empty,Empty,Empty,Empty,Empty,Empty</list></variable><variable name="square number"><l>0</l></variable></variables></project><media name="U2L4-Tic-Tac-Toe" app="Snap! 5.1, http://snap.berkeley.edu" version="1"></media></snapdata>