<snapdata remixID="9980357"><project name="U3L3-Tic-Tac-Toe" app="Snap! 6, https://snap.berkeley.edu" version="1"><notes></notes><thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAAfJklEQVR4Xu2dB3RUVfrAv1TSQxpplNB7rwIKInZFBQuwWLCtDbHSLLgri4q7uhasFOu6NiyrW1QsKF0FQhEBRSnSlSAQEkjyP7/L/86892Yy8yaIQ5J7z8nRw7x55Xu/+fq9N6KioqJCzDASCJMEIgyAYZK8uaySgAHQgBBWCfgFcMmSJZKfny916tQJ283t3btXSkpKpEmTJmG7B3Phoy8BHwA//fTTY+all5WVydatW+W44447+pIwVwiLBGwAfv3115Kenq5u5NChQ3LDDTfIzz//LA899JC8+eabcvnll8uMGTPknHPOkc8++0zy8vLkn//8p7zyyiuyf//+o/IA+/btk4yMDMnJyTkq5zcnDa8EbACibYqLiz0Ajho1SjCFJ5xwggwePFj+85//KO24ZcsWOemkk+Tdd9+VX375RcaPH3/UAORmuF7v3r3DKylz9aMiARuAwMQfo7y8XF588UVJSUmRXr16yf/+9z8544wzBBPdvn17adu2rcyZM0e2bdsmF1988VEHsE+fPkdFAOak4ZWADUDMLX8RERFCevBY+S+QGwDDC8rRuroPgLt27VLXio2NlS1fvC5x+7ZKZEWZHIyOl32xGUflPmLKiiWx5PB1S4r3Sf6Ai2VfvNfnA8C+ffselWubk4ZXAjYAgU8DmJSYKOsmdJXcho1le/cbJKdtL4mJiZGoqCiJjo4WcVFAOXDggERERgZ9QtIt69d9KwXz75e8kg0SO/Bm+aHRmZ7vAeDxxx8f9DzmgOonARuAO3fu9AAYKRUSO3WgbDj9UWnQuot6sri4OJl950hJXDvX1ZM27na8ZN36rOzYsUNBi1lPSkqyfZegh7/t27crv7P5vHulUb8LZX3DMzzH8ZkB0JXIq91BPgACC75fVESFrJ9+ozS75mmZP3++9O/fn7KJrLi0rRQkRnkeNL5dHyleMVf0f50SyHr+O1m7dq1Kpfz6668qqLH6lsnJyfLjjz+qYwoLC+Wi7O3Suk1b+a7+aZ7juCcicTNqngRsAPKi+WNER4oUzrxTOl/9oDz//PNCSqakeL9suKqjZNbxmtWYnMZS8ORC2XDrQCn5vtBHQpnPrZN169Z5AAQ46wBIcoqYd0Af3SVWMtLSZF3+qZ7DuKd+/frVPOmbJ7LXgjF1XgAjpHDmHdLpqikq0XzNNdcoADde3ckGYHzrHpJz2zTZ+tA1Urxyno9IM2auVQBS3iOdk5iYaDsmNTVVpXJWrFghy5Ytkxs7x0hmerqszTvFcxyugQGwZtJq04AAyB8jJuowgB2ueMDj/+0t+kV+vb2/pFs0YFKvM2Xvgvcl5cSLZM8nr/pIKX3GGvn++++VBtyzZ48kJCTYjtm8ebOCEv+Qakqr7Z9IZka6rMk92QYgLoAZNU8CNgDRRPwxYqMjbQDyb/huKStnS2zJr64kcTA1W3Y36SW7d+8+DHVMjI8GXL9+vfzwww/q84KCAumwe65kZWbI6uyTPNcgN2kAdCXyaneQTynOC2CUFM6cIO0vv9/zUGivNa88Ijs/nSWlh8qCPmy7Xn2l7shJHrNOCscZBQOfBrBRo0bSsWie1MvKlG/qDbABeOKJJwa9njmg+knAB0DqwYw6MVGybMYd0ubSSco8fvfdd9KtSxdZPrKjNE/2RsEcm3bOdbJvycdSumG1jwTqTlutANMmGC1oHVYA0YAd98yT7KwsWZXlBQ4NOGCAF8jqJ2Zzx5VJwAYgRX8ABLi42BhZNmOCtBs5WfmFpFA6tm8nW67rZgtCMobeLvuXzZH0oWNk88QhPtdJffYblWYBwKKiImWGnQDyOUNpwD3zJKdePVmZ2d9TDqQ+bQCsmRD7APjTTz+pJ9UAZp91s7z88ssyZMgQad2yhWy9vrsDwDGyv3COZAwdI5vuHuwjpZRnVikA16xZoxoYMMOBAOz063zJzc6W5enevB8+JN03ZtQ8CdgABD4NYHydGFk6fYIywfTi0Ry655efpei2EyTDEgUfNsHXKi1Y8sNKHwklP71SNm7c6NGABDLWAZxaAzZs2FC67F0ouTnZUpjmLb0B4MCBA2ue9M0T2fOApES8AMbKshnjpdXF93oqEpjPesvek5houxarTI6HIqJkW5tTlOnFrKP9KOdZKyH4gBs2bFCfY4IBMC83R5bV9TYf8H0DYM2k1aYBAXDTpk3qSRPj68jS6YcB1IN83Y5PZ8nWxR9Lyb69QSXSqn0HqTNolCcNA4DOeSZoPwBkaA2Yn5crS1K8DajkD08+2ZsXDHphc0C1kYANQOBzAthyxJ9l1qxZcu6550p2vSxZNrKLtEl1pwEVyE8uF8AmCMGUYsqtA/isJrjrvkVSPz9Pvk72zgMBwFNO8VZGqo10zY0GlYANQHw1L4BxSgO2+MM9qpRGyaxl82ayc/RxtiAkrlV3yb31Gdn6yPVSvMK3FJfwRKEy6xrAgwcP2m4K87p8+XL1b3RaN9vyoTTIz5evknp5jiMCNwAGfZfV8gAfANFI+GhJCXGyZNp4aTB4rKpevPfeezJi+DDZdVNvezNCXhMpeHy+bLhlgN8gJH7qMgUgUXDr1q3FCSBS04szcN2s1W9Iw/r1ZXFCD4+vyLyUU0/1NidUS0mbm/YrARuAwKf9seTEeAVg8+ETVRRMz150ZKT8fLMdQNWGtWqBxLfppdqynCPu8aUqt4gGJJ9H82mgUe/bN6VRgwayKL675zAAPO2008wrrIESsAFoDQiSExNk6fRx0nTo3Z7Hjo2JlvyvZ0nplvWuRJFQv6ls6nqBgpcImqmezqVo/vvf/8rkyZOFNq1HH31UepcVSkHDBrIwrpvnGkzNNAC6Enm1O8gHQB0QpCQlyJJpdgB5uqysLDlYcsAnmPD35EW7d0tkTGxQodx3331ywQUXSLNmzSR7zVvSuFFDWVCnqw3A008/Peh5zAHVTwI2AHVdVnW9/D+AGafdKCtXrlTgxcfHS/369T1PSekuNzfX71PT4Yy2a9GihedzzDuT2dWcEseoW7euipJz1r4tTQoaybyYzh4fEA1qAKx+cLm5YxuA1tao1OQkpQF3FJwsn3zyiZqYziQjIlU9li5dKphHoPr2228lLS1NHYMmW7BggaohU8MFXlZc+OCDD5SpdS61wfdodqA7uuGP70uTggKZG93Jcx0AZE6yGTVPAj4AAiGjbkqSbJx+g6xqeJ7SfH/84x/l2WefVfVcPehgRpsBIJFugwYN5Msvv5SuXbvKF198oTTYRRddpDqd9YoKtGNZ2/I1fFRBCDbks6lqCuYXUR1tAJ55pneWXM17DbX3iWwAYjZ1FFw3JVkyXxwsryUPkdzW3RWE5ONYNUsPcoOqcyYuTmlCAg20FX2D/DspF939gnklncOxeuon8NEtTQWE6xIhd1s2RZqeerl8HtnBcx20ajgAZJZepItppbUXnyN/chuALLuh83RpqSmS9dIQKY1Nla9yzpbo+u0lOS3zyK/oOAOg8qLXr/lGjt/8sjSJ3KnmBX8m7TxHAm4oa8PwHFdccYX60QB5VQaNuSTg0dbOaQRuz0faifQTlsHZhub2HLwPzoOLUxOHDUA0zRtvvCH16tWTiIoy6bbyMYnZtsJrCit8g4ffQigxUi7REeWeU+099xEp/PXw5CWEjxkPZQDglVdeqerO77//vmr1D2XguxL04JPi/1Y2lMsg4tPlrY9nGgER/pEsLweA3MtHH30UyiNUm2N91gekHMcybZhGfvm8hN9zUCvWM/OIoBF+qGYQAB944AEVAD333HNqFa+mTZu6egzgO+uss5Tmys7OVt+3jsWLF8uTTz4p//rXv1TAxcCtOPvss+Xaa6+V7t29CXQA/Pvf/y6dOnkDKlc34TgIGbAyWU0cfldIre4PqgHkpU2dOlWtbwiE1gDK3zPS9ICvicYi6gY+DSBuwsSJE+WFF16Qm266SeUtdUqK+vnrr7+uYLvkkkvkT3/6k/rRGACDk1TjAUQEM2fOlEmTJgWEEPjOO+88ady4sUybNk0tQ2cF8JZbblGWgQU5K1ssk5Lj0KFDpUuXLgp6A6AB0COBQBASfWN2CRaAD+1lBfCdd96RCRMmqBUcMjMDB2J6Ej3lxYcfftiY4CAM1goNqGXgD0LgQ2uxHB0rQGh/0wogKzqMHTtWaUg346233pIHH3xQndP4gIElVqsARBSsc3PPPffIq6++Kp07d5YLL7xQSQjTau3W1gDefffdamUugjO3wRD+IvlSypSsqW2CkMohrHUAIoq3335bbrzxRhWxogFZgN05VUADiNYDIsxwKIOF3FkPh+DHAOgSQFrnSb+Qeqlq4jSUl1TZsVRT0CLk76gjhzqsUbC/73JuUhvUpsmv+ZvyqQGkEZaUyz/+8Y+QbmP48OHKj/z3v/9tAAwgOY8GZPUB4NMvHOHxYsjLUcslsnPO59DnXb16tbRq1SrgC+KYNm3aKLDcDn4QoVRA9HmDATh69Gi1Gtdll10md9xxh0q+9+jRw3ZbGsCRI0fKuHHj1NJxoQxSOQQkpGeMBnShAXkhlLxoIKCT5eOPP1bJWKoiVBMAjJlpQEGZitpuy5YtVb7s8ccfVytf0XLPeciF3XnnnWoiE21Wc+fOVUnd6667TkEcygLo/DBobghlBAJwzJgxKprFNHJP2hyzI4B1CTgN4NNPP638OX6E1jp4oPtBRh06dFA/uMcee8wA6FYD6lWsOJ50BKBhjqmH6mYCulrQFlQadNKWlAPgIvBVq1ap1iv+y0Qiymh33XWXgpsELl3RoQxya6FqwcoAJEGMSdTw6fvADKMNSTLrJUCsUTD3jeamY9vNYIMfuoRoVzNRcGCJ2Uyw3iOEr9A2BSwU9Ol00ZPKdfkJTYbjTocMx/D/QIrGQxsCrp7/wcujrMcMuFBMMPcBgKFu0eAPQNIiJJZnz57tN5GMxkdzawitAHIPLBFMMltHzZWJFV+RKJs9VEjvGABDABBzpwcA7tu7R8rL8NnYUpglNY7ufw8U75fElFQpL/duYczLD3WLBieAQEAvY7DGBCuEpFyslZCvvvpKld/wCW+77Tb1o7MOAqcpU6aoNA9+H26DqYQEtxceDWjdogHtNfu2/tI5aY9sTmguMY27iSTUDc5f8Ov5HBFZVipF6wulVdGXEhkhUm/4A7IlyxsQ0BxwJACSfMZF+PDDD111xWgI6aZhioK1GYEgjYQ0PvKgQYNU5YRBjhCzTsIa10Tv8GkADA6EB0DrFg0xUZFy6OH+UtRmiKQOvF7qxMWpMx3YvlnWL/pUysqC+3ENO/SQlMatA94BZhwTTlCybfH70mfd06oX8Ei3aGAOM40D+KiPPPKI0lgESG4HES/BB4EXGzQ6+wHpzcNv5N4Z+MisXUNQZh1/+ctfVJcMTRA071Zl4AahWalD18RhAxAIGVERIoeePEeKR7wkaRmHa5+Y5HfObiJ9s2LEscCVX7lgsFmg/JtvvlEvqLS01G8dFX+RTmz8w1ab3pPuvU+Q7xt4Z8DRmhXqHiForauuukp69uxZ5TVlAGzevHlqH7yqDvbXo5+P6N+5LJ2bczLNgWBQd5y7+U51O8YDIC/aCuDy51gh/0FlUnC+S0sOyIYrO9hWRUjue55EZ+ZJ2d7dsuejl32e3blHCCBaV8bC1FMtAELmklzXpkyyc3LVHiF6VGWPEMpq5Pd4+USupINCGZhhonc0qLMfkPPg73EMppeBKSZ6dvqFmGAyCeQEdZOD2/vA9UB76mZU5tjUxOEB0LpFg14hHwB5mUxIIkDY6NgjBIG0eHeXrBnkfw859ghBu+HAk0pxrg+NWWJzGqJnGj1Hd46VjPS0I96iQQchpF3OP/98uf/++4XKhJuhfcCrr75aJeatAPJDwRw+9dRTqo6sm1yZ0ccPiYbU22+/3dPEC4D33nuviopp4aKk52YXeg0fkTfRe61oSLVv0cAK+ROk45VTVGKZIMDfHiEZw8ZIWdEuicltLDum3+nzfjHBvByET5Dj3CME3w9twoQkNMWZKRvUHiHWLRr4Xqh7hFijYO6fuiyJcSLYQGPRokUqzQIoziiYgITPmjdvriwCfYPWwWxCrsE8EhodKCPqIATfUP8AnE0PzvvRfYkksmnnYtQKAAHAu0eI3qLBu0J+2cFSKb93kNQ5sMeNIpGotGyJnfSB8GIwTQQc5Aitg5eqc4W0LnUomitZGRnybY53NVQADHWLBmcahon1RK2BIAQ+tKU22dY8IHlQggzqwmizQIPPqTETdWPCdR5Qt33x3cog1PAxRdVqsmsNgNYV8gtn3CHtr/ACiODysjKkcM5HcqC0NCiEDVq2k4o4+65Izi/57BFSNFfqZR75Fg3+EtGBIOQzSopEzNpftAJINEtVg/yem0G+kPovEFoT0YEg5DM6b7AWTn+xVgAIfF4Ao6WQFfIvv88jb8prs85pIf3qRUukSkoHHlHR0ZI0dYkywVoDOveJ89mi4f/3CLFu0UB1JtQ9QiorxWkIyeXh4zH0v9H3d+mll3oeSgOIOaYGTFQcbE6J/jLnpAzJChFAbW1GsEL40ksvKbfE+m+vvfaaTydSrQBQb9GAEONio9UWDc2H36N8NIr3w4cNlZ+u7SpZlgXK41r1kLqnXirlxXtl+zNjfYgMtkUDCyFZN6nptGe+WoWVLRr0qMoWDYGaEUgLYWqp/bLyPw0W/kyzBpA98kijhJqHAzrKlphbZzcMwDFvGZnTi0iQR5qqMtNcawBEIFYA2142WdU0mS9RXnZItjr3CBk2Vna98oBk/GGC7Hp5sl8AAWzhwoUqkHEuSsRn1j1CADAnu56syPDujAmAoW7REKwdi+vin3Fu5nrQPOAcGkCOw/SimUIZBCx0AVH+89eORU0cCPXn9BxWFiHXCgDtWzQcXiE//9wxar0WegQz09N89giJb99X6p5yiUhUlGyZcoXP+2GPECJc0hWA5mxpd2rAznsXqD1CrFs0kKD+rQHkuvh8AHjzzTer1EllABK8sE8KmiqUgXYlsAGsyvoBqbLwOREv80gqm4NdKwC0btGQEBer1odufckkj8xjo6OkdFx/SYoO7v/xpYjoGIl5aKFacxo/B3Pkb4V8qwYEwLycI9+iIZAG1Dk2NBvdL/wXc+yEUGtApmMSVIS6NAbpGioY9Bn6A5C+REp+AMg1kENlENYaAIGQkRCnt2j4s61y0aZpgaxZ9LkcKC4OqgzSC1pI0cEK2/edjag+m9TsWyj5ubmyNLWP5/ykJkLdI6QyAJ0JXi6COSbyRSPStKCHNQomj0dk6rYk+Pnnn6sgh4ZXf+1YzqZYzDF+Jkl5GmRpAraOWgGg3qKBUhkALps+Xlpe/GePHDDD743oKT2TS8WNEoxLSpGYybNVZE0UTFnMWQ/12SNk30Kpn3d4iwZdsqPgH+oeIf4ABGTMKRORqC5YBzlQPiPhTaWDYQXwmWeeUZqMSDhYJYMAA5cB7UpvoBNA1ooBMmdTLNdEC+NzoxWtENYKAK1bNLBC/tJp46XZ8InKkWYJii6dO8m2Ub0kOy7S8+7iW/eUyOQ0Kd+/x9UWDc5uaOui6CzRpvcIOdItGpwAVpbgDQShFUA0FJEzP6RA5TTgI5VDRMs8E+rDVgB1U2ygvkR/ENYaAHVxPSkhXi1QThoGzchO5r169pBdjj1CaItpPmubrLugvlQc8k1Os0cIZp0omK5mXox1UB2xbladu/ZtaVA/X75M7Ok5jCAo1D1CrAACBaU4FtEM1hBg1YTOtWGAmKgVeZAzxC3QMwfR7mhHWsCoYkyfPl0FFNZ+QNaoeeKJJ4I2xfrThLUCQLSRE0CiYEwhAi5o1FB+duwRktzvfIlr2lFKN62Vog9e8PEL2SOE1A5RMFUPJ4DOL2StZouGw3uE6FGVPUI0gJg62uKJvkmluJlYriEkaY7mtzYjoAkxq8BEo4Je/5o9UGhCvf7661XNV19HA0ijAvVjFkuyrpkdyJFGE/Ic3DdNDjV+dSzrlll6gfJmwyZ6ZJSSlCil4wdISoy7KJgvRj28WC21pueJOAHEWad4z6BlqV/kKrVHyJFu0cCLAwYqGHTZkGqh1ux2kPphNhtaE7/QXy8fz6U3duQ4f/OX8fMAjr5CwAw2ddV5f1RKsBL84RtWtiiS2+c6Fo/ztGNZI1JgO7xFw122e26TXVeKf1wl5Y793vw9WGlavmwpjbTtguQ8DnOGWaNVC/OVs/YtKWho36IB8x/qHiEASOMA7VhVfWnk8OiKxtxiwkMdRNx03+B6HOkC69Sif4v5xaE+w+9xvAdAa1UCAJdOGydNht6lUgP8Aul/k/JyqSi3bzZY2U1GsDF1hDdgqew48mukOfCZEr56Xho3aiTzY7t4DgfAULdo4OXTDa0XXLdeG41IlIkJRdMBaLt27VSrlXXLCcpiLFaE+Qy1qVWne/AbqTuTZ7QO3BIqK7SKkSWgLxITTgOqdYFL/R2+z9TQI53g/nsAFeo1bADqgCA1OVGWPDtODna+UJXPKKPhT1lXD+BF4hPhJ2G+mcTOC8XsoYEwTyR5WaOZl8xStxTznTkubpglzwCx3S9fePYI0Q8CgFXRILwsOlj0oNsbU0xUP2zYMDWHGei5T56FHZvwu1g1gQGA3BPwYz7psA7WT8j39NayNJMiC9wPK4A0JxANo9WBDfPNd5hHDfBoTPoArcvA1QoA0RbeLRqSZcm0sbK90cnK90DwlK3o7tCDlQKACR+HF4j2ABaOYSEfghcqCEBKxzO/dHxA0i3Wge8EKMAZu2CatGzRwrZFAxWUIwWQaxNJ01VDstnZGMv90KSAO8B0Svw/DSCugZt+Qg0fLVX4egQqpGCsAI4aNUpNPSCV42+SFH2H1Kb5sdJTqN2HWgEgJkkDmJaaLFHP/UFeTR4ivY7rrTQfE7ZZH0YPwMCHAyDSEfxigZVfPU47OT/MNtqR5C3RJcdaI1EAxsRxHAAkLXhKTj5j0G+yRYNVAwIfJpn2+EBDay9+cICDBgRARjAI/eUarQDSxg94pGuCrbvNShKkroCQUSsAZM9eIGEAYOaLQ2RJWn9ZX7eriiBpMQ+2Yha+IppQd1YHetmYZqBj5yWuHbNjtZy9/SU1LXNOhHc3JvJ4VdkjRAOIr/W3v/1N1V3dpGHweTG7tGjxHBrAQBDqfj40Kz9UfR0NIEEMfiapFBoPgg2sBlmBW2+9VfmmtQJAJg6RWkB48bHRUvDWJZIWFynLD+XJgZyOcig+PZjcqvR5ZPlBKdm4XPpGrpZIqZDoAaM9ALJSA2aTmmqoQwPICwQoN/6bvgbfwRyi+a0AWiHEn6SNK1CXswaQHybajLkibgfJbP2dWgEggkFbYC6ZiN2uYr0klByeJ/x7DX7532f2kZ17S5XfiC/VsaN3y65Q7kMDyJRJpjRSoXA7/vrXv6qFzQHRCSDnwF0hYqXshsYEVn/NpBpANDyWgQnybgdpMYI/igO1BkCEg1kkMnRjrtwKM9TjqLxgsogQqzo0gPijnC+U5wE+cohoTX8Ack9MNcCc4vPix/oLbDSA+MZ00oSihfkx4vKgPWsVgFV94cfa9zSABDpoqVAS0oBD0EC6pjIAqbTwY8Vv9tdPiDw0gADKNE5yeW4HkTuA44caAN1K7Rg6TgNIAIPmoZvF7WBhIjIC5PL8AUg/H7lOIlr8VK4xYsQIGT9+vO0SGkBayvgRsEKX20Hlg4CGpLkB0K3UjqHjNIB0oLAoJQsWuRmkjUgQk5TGt3MCSJ4O8ABDB0ck8FnKw9pPaNWA9Ad269ZN5UudedDK7ol5OOQ/aVQ1ALp5c8fYMRpA/D+Awvw5S2LOW8bv4sVzPIliax6QY6lgMD+ERYeckbm/plZrHhCQMcVUlIL5o7SNsewxwOIHGgCPMbjc3I41EU3NFW1Cbk/PB3aeg6ibFbUwl1RymJ9hBdBNM6kTQiuAui+R/CebHTpXidD3w2d0TaO1CcQYBkA3b/wYO8ZZCyZgoE2eKgTBBYlemgBId+DPkXej9Z/GA1JR1lIcGom934Ai2NavVgiJ4q2lOCBkfxJWTKDsR78g6SFq6CTKqQVTUcH3s5bqDIDHGFxubscJIN/BxDK3gwQvtWxePJDQDoYPxwqnemgA8dmCbXTovB8gHDx4sKp/U1Zzmn5WWCUpTZ8gKS9+COQ7KRmyHqHTRBsA3bzxY+wYfwCGcosAiNZjcSQ3W706z40mw+wTUQfzPYPdlwEwmISOwc8BkBxgVZPZJJqpoNCnZ23CCOVRadWnQyjUVf6d16BChbas0f2AoQi2OhyrF1qq6r0CDtqPmXDBtmit7Bqcgz/mlwSbzhnsPjHTzhVYg32nOnxeIzcrrA6CN/d4WAIGQENCWCVgAAyr+M3FDYCGgbBKwAAYVvGbixsADQNhlYABMKziNxc3ABoGwioBA2BYxW8ubgA0DIRVAgbAsIrfXNwAaBgIqwQMgGEVv7m4AdAwEFYJGADDKn5zcQOgYSCsEjAAhlX85uIGQMNAWCVgAAyr+M3FDYCGgbBKwAAYVvGbixsADQNhlYABMKziNxc3ABoGwioBA2BYxW8ubgA0DIRVAgbAsIrfXNwAaBgIqwQMgGEVv7m4AdAwEFYJGADDKn5zcQOgYSCsEjAAhlX85uL/B9qZt7aiOezkAAAAAElFTkSuQmCC</thumbnail><stage name="Stage" width="480" height="360" costume="0" color="255,255,255,1" tempo="60" threadsafe="false" penlog="false" volume="100" pan="0" lines="round" ternary="true" hyperops="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><sprite name="Square" idx="1" x="50" y="-50" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="false" hidden="true" costume="1" color="80,80,80,1" pen="tip" id="8"><costumes><list id="9"><item><costume name="Empty" center-x="29" center-y="28" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADkAAAA5CAYAAACMGIOFAAABKElEQVRoQ+2bIQ6DQBBFPzfoDVqDbhMEhqQVa/YWvQEWBzgsp1mzogKDIKnH0BtwhGYbQtLSVs9uPieYN/+/jFkiABWAI4ATwvzu0QJ5BnAJkxG3T8hJa400TQ8+A/d9PxljHILjeIfUWk9t2yKOY68hx3Gc8jyHMWYLWVUVyrL0OcR19rqu4Xg2SRLSs3yZJJ30qLKsK+vKusraAJ2kk7Ia+Xca1pV1ZV1lbYBO0klZjeQJoZN0kk7K2gCdpJOyGsk7SSfpJJ2UtQE6SSdlNZJ3kk7SSTopawN0kk7KaiTvJJ2kkyE4qZSam6ZBkiQ7j3g2ow7DMBdFAWut49g8z56VUsiyzGvIrutma62D/wrpc4C/Zn8leV0epO9DJATwcJCh/iqxZvYEuRuoAhendhsAAAAASUVORK5CYII=" id="10"/></item><item><costume name="X" center-x="29" center-y="29" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADkAAAA6CAYAAAAKjPErAAADw0lEQVRoQ93bvU/bQBgG8IdWQgyWYOiQDYZuDAl7IUFd6AT8BYSNIQOoS7bAxggDCwzAxgZjlwoGxqoCQbYOsGWoKpAYEFKl6nE5yznss30fdpyTWGIH+3fve++ZOzOC4WwTAB4EbQTAJoAqgNqQeN8BqAB4AfAHwE+BrANoDAlSZlzIyBfP89BqtUbHxsZKZX5+fsbR0RF6vV4i0j+hVqvh/PwcExNM7XK05eVlnJ2dBTc7PT39u9vtfgDwJpLBSWWCrq6u+lEU7fDwEPf399jcZLmRkEtLS329UQaoDOx0Oj5ua2srGsmDk5OT4BdFG2SoDFxZWQkiqkSyJxj6QYeqgAxQIpInRUGZ64xs0S0JmBoZBWW1ZdUtEpoGmAnpl6aLC7AgPT4++gEsEipnV3gMytmVKl3DX7q6ukKj0SgUmgWYOZICWyRUBtbrdT/DVC1zJIuEysBqteoDk57GtJHE5hlRXaB2uuY9Rk2AVpCuI2oKtIZ0BeVwmJ+fx8PD/z/s045B4ylEVcVsjlFbQKuRtFl1ZeD4+Lhf5KamprSeIo2qa9wVTSIaBeQ0YfL46AQZN0b5UM/HQlXnhMcgI2gKdJKuqumFxwhtNptvnC4iKC7iLJLiAnd3d370rq+vA5gM5TkzMzNBFbUVwdyQvBCnAD7UR0F5jCnKSLLZBjpP13BORkH39vZwcHDgFJgrMi6i4Y44PT1VFiat+SPt8ofuL4/6HiM6OzuL29vbvsNxBcnGtZ0XHvkmiZybm8PNzc1wIuUiI3eAq2jmGklOE6KKEsjCs7+/r5xeSpWuUcv3fChQTS82gLlV1zigQLiGOk/XtGujLqFOkWmBqohyT4bbFSbNGTIrUAXl2GXl1W1OkLrAMHR9fR3Hx8eBywRqHSn2A8XdqZbvkyJDmA2oVWTW5fskJI/bgFpDugCKTjCFWkHaWBtNiqoJ1BiZB9A0okbIPIEmUG1kEUBdqBaSy4RclxFNd/k+aRyqjmcZo5mRNpfvTZBZppdMSBnI93z4WdImqCnGNKKpkS4Xf007QU5drvPyWVd0firkIAPjilH47bFEZBmAArqzs4ONjY0gMQR0d3c3/t26xcXFvk1QF6vbpqkqfz/q7bGFhQVsb2/z1P5XQdvtNk5OTsB9CrYyAAVYhlYqFfGCbz/S87y/T09P78sGjIO+fn4pXs/+DOBTOA3W1tbA3ihbYz0Jv8HMvSeB/ArAKxso5f3+IJK7o9wK/gJgFMAlgF8pf8Egn/bx9ea+Eyn+VYIf8ufbIN+5zr39A7wlN3D1pfCoAAAAAElFTkSuQmCC" id="11"/></item><item><costume name="O" center-x="28" center-y="28" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADkAAAA5CAYAAACMGIOFAAAEX0lEQVRoQ+2aizUsQRCGeyJABGwEiAARsBEgAkSwuxEgAjYCRGA3AkSACBDB3PPNubWnts2juuexa6lznPsw091//VV/V1dP4pwbOuf23OraNPkPcrC6GN3oV4IcpWn641lNkmTknBMc80ymaboyUZskBGlm3YF8e3tz7+/v2aybm5tua2urVYe2DnI6nbr7+3s3mUzc8/NzKZidnR23v7/vjo6O3N5ecyLfCkiYGo1GGbjPz88oltbX1zOwg8GgNtONggTQ9fW1Gw7ZbotNh6gO3aI3GO/s7MwBPMYaA3l7e+suLi6+MQcgGJEwLFukhDV/Ss7K8wC8vLx0JycnwTgbAQm4q6urucnJKRgAXIyRw7xPTms7Pz/PwIZYLZCE5+npaZZ7YjAHYNhrwhgbYJpZxr65uTGHbzRIAB4cHMwp5vHxcQYwNneKnMJcAB2Px7NHUOLHx0fTXNEgYZA8FEMFqwSnLrOMj2qLkZ8wWmVRIP3JmChGEKoWl/d7HIuDQ5wbDJIc6ff7s0mQdl90YhYf8g6hy1Yldnd3V6oBwSB7vZ5jb8MODw/nRCdkoXWfRXweHh6yYSgLX19fC4cMAgljbBfY2tpaBrZpkbGCR4wA9/X1lb3CtgLDeWYGyaCwKGVa2aDWhdZ9TjsdZ8NmntPNIPWA7IUSsnUXWvd92JQ9tMjxZpC7u7uzPbFLNa1yglZbqiwqJd9MIAnRjY2N2bsfHx8Ly0UfgGVtJpAWb1V5vM3fU/28vLxkU+RFmQkkG72UVMsgOL7DtF5QWupKjGdNIDlJyGmAejH2ZNEWm+QhdTSWl5d/IMXziI7sj8skOrI+LT7sk6xRm4lJ9ZBb1lZl2Rr/QArlWqKfnp4c/14mo9VJsYJtb29/a32amFwhdR3OXfjo3NMgq85ui2BYn3GjtxDdCcjbbBcBTM+pi5W8NowK12ImdcxXHVAXAVhvcXmaYcpJFs7+IwfUZRIfTUDREdAMUofEMoWsZV1mkLo+hFlO4W1fuVWFPgd3uhViRXW1GSQDaZXl7wy6SKMol0Ny0YHZfAoRIL7nFrmd+P3XssgKYhKwOgcQI9jsugJCbGBRDg1VGhEMkoEJVTmJk5eobVetSb9rSBlHyJbNHwwSNvEkQGVLCbl8qZPDpAvde7mWp/cLwKpIigLJQn21bTt0/RBlDdYuRTRIJvGTH6By9V2HMf9d7j387nhIW7QWyLzQ5f8IHxpedXtBRAvXEvqrEWuIBncGqlghV7iAETGS5wGJGrOHWQsHxqJpRpT4jWJEhhOHdSxZR20mZSBUj9YgPyJI2jmwK1fsLFIWCii5cgBA3rc+sEe48hOj4o2B1GD9q++qSCj7fRNX9I2D1NWRfLIi94hWsNx7yicxoaGZN0drIPVkhLL+7EyHqA5d+ewsJiTLHNgJSCuDbT1n6gy0NXlX4/42Jr99nj1J0zTum7GuKDLMkyQJt7KC43d+g27w0497JGtJ/vjwrHL7P5XNSaMYdLI4AAAAAElFTkSuQmCC" id="12"/></item></list></costumes><sounds><list struct="atomic" id="13"></list></sounds><blocks></blocks><variables><variable name="postion number"><l>10</l></variable></variables><scripts><script x="12.174311926605487" y="9.174311926605505"><block s="receiveGo"></block><custom-block s="makeBoard"></custom-block><block s="doSetVar"><l>X&apos;s turn?</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><block s="doSetVar"><l>Board</l><block s="reportNewList"><list><l>1</l><l>2</l><l>3</l><l>4</l><l>5</l><l>6</l><l>7</l><l>8</l><l>9</l></list></block></block></script><script x="9.174311926605505" y="151.39653414882784"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="doIf"><block s="reportAnd"><block s="reportNot"><custom-block s="won? %txt"><l>X</l></custom-block></block><block s="reportAnd"><block s="reportNot"><custom-block s="won? %txt"><l>O</l></custom-block></block><block s="reportNot"><block s="reportEquals"><block s="reportFindFirst"><block s="reifyPredicate"><autolambda><block s="reportIsA"><l></l><l><option>number</option></l></block></autolambda><list></list></block><block var="Board"/></block><l></l></block></block></block></block><script><block s="doIf"><block s="reportEquals"><l>1</l><block s="getCostumeIdx"></block></block><script><block s="doIfElse"><block var="X&apos;s turn?"/><script><block s="doSwitchToCostume"><l>X</l></block><block s="doReplaceInList"><block var="postion number"/><block var="Board"/><l>X</l></block></script><script><block s="doSwitchToCostume"><l>O</l></block><block s="doReplaceInList"><block var="postion number"/><block var="Board"/><l>O</l></block></script></block><block s="doSetVar"><l>X&apos;s turn?</l><block s="reportNot"><block var="X&apos;s turn?"/></block></block></script></block><block s="doIf"><custom-block s="won? %txt"><l>X</l></custom-block><script><block s="doStopThis"><l><option>all but this script</option></l></block><block s="doSayFor"><l>X won!</l><l>2</l></block></script></block><block s="doIf"><custom-block s="won? %txt"><l>O</l></custom-block><script><block s="doStopThis"><l><option>all but this script</option></l></block><block s="doSayFor"><l>O won!</l><l>2</l></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportFindFirst"><block s="reifyPredicate"><autolambda><block s="reportIsA"><l></l><l><option>number</option></l></block></autolambda><list></list></block><block var="Board"/></block><l></l></block><script><block s="doStopThis"><l><option>all but this script</option></l></block><block s="doSayFor"><l>The game ends in a draw. Please click the green flag if you want to have a rematch.</l><l>4</l></block></script></block></script></block></script><script x="204.82568807339447" y="881.3445463812433"><block s="doSetVar"><l>future board</l><block var="Board"/></block><block s="doReplaceInList"><block s="reportFindFirst"><block s="reifyPredicate"><autolambda><block s="reportIsA"><l></l><l><option>number</option></l></block></autolambda><list></list></block><block var="future board"/></block><block var="future board"/><l>X</l></block><block s="doIf"><block s="reportNot"><block s="reportListContainsItem"><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportListItem"><l></l><block var="future board"/></block></autolambda><list></list></block><l/></block></autolambda><list></list></block><list><custom-block s="Possible Winning Tripples"></custom-block></list></custom-block><block s="reportNewList"><list><l>X</l><l>X</l><l>X</l></list></block></block></block><script><block s="doSayFor"><l>The game ends in a draw. Please click the green flag if you want to have a rematch.</l><l>4</l></block></script></block></script></scripts></sprite><watcher var="Board" style="normal" x="10" y="10" color="243,118,29" extX="87.20000000000005" extY="76.3"/><watcher scope="Square" var="postion number" style="normal" x="10" y="31.000001999999995" color="243,118,29" hidden="true"/><watcher var="future board" style="normal" x="7" y="128.650004" color="243,118,29" extX="87.20000000000005" extY="76.30000000000001"/></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="other"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doSwitchToCostume"><l>Empty</l></block><block s="show"></block><block s="doSetVar"><l>postion number</l><l>1</l></block><custom-block s="for %upvar = %n to %n %cs"><l>i</l><l>1</l><l>3</l><script><custom-block s="for %upvar = %n to %n %cs"><l>j</l><l>1</l><l>3</l><script><block s="gotoXY"><block s="reportSum"><l>-100</l><block s="reportProduct"><l>50</l><block var="j"/></block></block><block s="reportDifference"><l>100</l><block s="reportProduct"><l>50</l><block var="i"/></block></block></block><block s="createClone"><l><option>myself</option></l></block><block s="doChangeVar"><l>postion number</l><l>1</l></block></script></custom-block></script><comment w="128" collapsed="false">The nested FOR loops are the important part of this solution.  Details like the starting position of the sprite might be different in student solutions.</comment></custom-block><block s="hide"></block></script><scripts><script x="22" y="323.1333333333333"><block s="doSwitchToCostume"><l>Empty</l><comment w="144.66666666666666" collapsed="true">Another possible solution.</comment></block><block s="show"></block><block s="gotoXY"><l>-50</l><l>50</l></block><custom-block s="for %upvar = %n to %n %cs"><l>i</l><l>1</l><l>3</l><script><custom-block s="for %upvar = %n to %n %cs"><l>j</l><l>1</l><l>3</l><script><block s="createClone"><l><option>myself</option></l></block><block s="changeXPosition"><l>50</l></block></script></custom-block><block s="setXPosition"><l>-50</l></block><block s="changeYPosition"><l>-50</l></block></script></custom-block><block s="hide"></block></script></scripts></block-definition><block-definition s="Possible Winning Tripples" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportNewList"><list><l>1</l><l>2</l><l>3</l></list></block><block s="reportNewList"><list><l>4</l><l>5</l><l>6</l></list></block><block s="reportNewList"><list><l>7</l><l>8</l><l>9</l></list></block><block s="reportNewList"><list><l>1</l><l>4</l><l>7</l></list></block><block s="reportNewList"><list><l>2</l><l>5</l><l>8</l></list></block><block s="reportNewList"><list><l>3</l><l>6</l><l>9</l></list></block><block s="reportNewList"><list><l>1</l><l>5</l><l>9</l></list></block><block s="reportNewList"><list><l>3</l><l>5</l><l>7</l></list></block></list></block></block></script></block-definition><block-definition s="Status Tripple %&apos;List&apos;" type="reporter" category="other"><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><block-definition s="status of all winning tripples" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><custom-block s="Status Tripple %l"><l/></custom-block></autolambda><list></list></block><list><custom-block s="Possible Winning Tripples"></custom-block></list></custom-block></block></script></block-definition><block-definition s="won? %&apos;Input&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%txt"></input></inputs><script><block s="doIf"><block s="reportEquals"><block var="Input"/><l>X</l></block><script><block s="doIfElse"><block s="reportListContainsItem"><custom-block s="status of all winning tripples"></custom-block><block s="reportNewList"><list><l>X</l><l>X</l><l>X</l></list></block></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block></script></block><block s="doIf"><block s="reportEquals"><block var="Input"/><l>O</l></block><script><block s="doIfElse"><block s="reportListContainsItem"><custom-block s="status of all winning tripples"></custom-block><block s="reportNewList"><list><l>O</l><l>O</l><l>O</l></list></block></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block></script></block></script></block-definition></blocks><variables><variable name="X&apos;s turn?"><bool>true</bool></variable><variable name="Board"><list struct="atomic" id="1016">X,O,X,X,O,X,O,X,O</list></variable><variable name="future board"><ref id="1016"></ref></variable></variables></project><media name="U3L3-Tic-Tac-Toe" app="Snap! 6, https://snap.berkeley.edu" version="1"></media></snapdata>