<snapdata remixID="14018243"><project name="U3L3-TicTacToe " app="Snap! 10.1-dev, https://snap.berkeley.edu" version="2"><notes></notes><thumbnail>data:image/png;base64,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</thumbnail><scenes select="1"><scene name="U3L3-TicTacToe "><notes></notes><hidden></hidden><headers></headers><code></code><blocks><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"><block s="reportListIsEmpty"><block s="reportCDR"><block var="words"/></block></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block var="words"/></block></block></script><list></list></block><block s="doIf"><block s="reportVariadicEquals"><list><l></l><block s="reportListItem"><l>1</l><block var="words"/></block></list></block><script><block s="doReport"><custom-block s="join words %mult%txt"><block s="reportCDR"><block var="words"/></block></custom-block></block></script><list></list></block><block s="doIf"><block s="reportVariadicEquals"><list><l></l><block s="reportListItem"><l>2</l><block var="words"/></block></list></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><list></list></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="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="makeBoard" type="command" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><block s="show"></block><block s="doSwitchToCostume"><l>Empty</l></block><block s="doSetVar"><l>position #</l><l>1</l></block><block s="doFor"><l>row</l><l>1</l><l>-1</l><script><block s="doFor"><l>column</l><l>-1</l><l>1</l><script><block s="gotoXY"><block s="reportVariadicProduct"><list><block var="column"/><l>50</l></list></block><block s="reportVariadicProduct"><list><block var="row"/><l>50</l></list></block></block><block s="createClone"><l><option>myself</option></l></block><block s="doChangeVar"><l>position #</l><l>1</l></block></script></block></script></block><block s="hide"></block></script></block-definition><block-definition s="win or tie?" type="command" category="operators"><header></header><code></code><translations></translations><inputs></inputs></block-definition><block-definition s="best moves (2)" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><l></l></block></script></block-definition><block-definition s="x win" type="reporter" category="control"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><l></l></block></script></block-definition><block-definition s="possible winning triples (2)" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><l></l></block></script></block-definition><block-definition s="possible winning triples" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportNewList"><list><l>1</l><l>2</l><l>3</l></list></block><block s="reportNewList"><list><l>4</l><l>5</l><l>6</l></list></block><block s="reportNewList"><list><l>7</l><l>8</l><l>9</l></list></block><block s="reportNewList"><list><l>1</l><l>4</l><l>7</l></list></block><block s="reportNewList"><list><l>2</l><l>5</l><l>8</l></list></block><block s="reportNewList"><list><l>3</l><l>6</l><l>9</l></list></block><block s="reportNewList"><list><l>1</l><l>5</l><l>9</l></list></block><block s="reportNewList"><list><l>3</l><l>5</l><l>7</l></list></block></list></block></block></script></block-definition><block-definition s="status of triple %&apos;triple :&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%s" initial="1"></input></inputs><script><block s="doReport"><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportListItem"><l>1</l><block var="board"/></block></autolambda><list></list></block><custom-block s="possible winning triples"></custom-block></block></block></script></block-definition><block-definition s="Status of all winning triples" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="reportMap"><block s="reifyReporter"><autolambda><custom-block s="status of triple %s"><l></l></custom-block></autolambda><list></list></block><custom-block s="possible winning triples"></custom-block></block></block></script></block-definition><block-definition s="won? %&apos;who&apos;" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s" initial="1"></input></inputs><script><block s="doReport"><block s="reportListContainsItem"><custom-block s="Status of all winning triples"></custom-block><block s="reportNewList"><list><block var="who"/><block var="who"/><block var="who"/></list></block></block></block></script></block-definition><block-definition s="Did we win?" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><l></l></block></script></block-definition></blocks><primitives><block-definition s="if %&apos;condition&apos; %&apos;true case&apos; %&apos;else pairs&apos;" type="command" category="control" selector="doIf" primitive="doIf"><header></header><code></code><translations></translations><inputs><input type="%b" readonly="true"></input><input type="%cs" readonly="true" irreplaceable="true"></input><input type="%elseif" readonly="true" irreplaceable="true" expand="else if&#xD;"></input></inputs><script><block s="doPrimitive"><l><bool>true</bool></l><l>doIf</l></block><block s="doDeclareVariables"><list><l>self</l></list></block><block s="doSetVar"><l>self</l><block s="reportEnvironment"><l><option>script</option></l></block></block><block s="doIfElse"><block var="condition"/><script><block s="doRun"><block var="true case"/><list></list></block></script><script><block s="doIfElse"><block s="reportListIsEmpty"><block var="else pairs"/></block><script></script><script><block s="doIfElse"><block s="reportListItem"><l>1</l><block s="reportListItem"><l>1</l><block var="else pairs"/></block></block><script><block s="doRun"><block s="reportListItem"><l>2</l><block s="reportListItem"><l>1</l><block var="else pairs"/></block></block><list></list></block></script><script><block s="doRun"><block var="self"/><list><block s="reportBoolean"><l><bool>false</bool></l></block><l></l><block s="reportCDR"><block var="else pairs"/></block></list></block></script></block></script></block></script></block></script></block-definition><block-definition s="%&apos;arg&apos;" type="predicate" category="operators" selector="reportBoolean" primitive="reportBoolean"><header></header><code></code><translations></translations><inputs><input type="%b" readonly="true" irreplaceable="true">true</input></inputs><script><block s="doPrimitive"><l><bool>true</bool></l><l>reportBoolean</l></block><block s="doReport"><block var="arg"/></block></script></block-definition><block-definition s="list %&apos;inputs&apos;" type="reporter" category="lists" selector="reportNewList" primitive="reportNewList"><header></header><code></code><translations></translations><inputs><input type="%mult%s" readonly="true" irreplaceable="true" initial="1"></input></inputs><script><block s="doPrimitive"><l><bool>true</bool></l><l>reportNewList</l></block><block s="doReport"><block var="inputs"/></block></script></block-definition><block-definition s="item %&apos;#1&apos; of %&apos;#2&apos;" type="reporter" category="lists" selector="reportListItem" primitive="reportListItem"><header></header><code></code><translations></translations><inputs><input type="%n">1<options>1=1&#xD;last=$_last&#xD;random=$_random&#xD;&#126;&#xD;parent=$_parent</options></input><input type="%l" readonly="true"></input></inputs><script><block s="doPrimitive"><l><bool>true</bool></l><l>reportListItem</l></block></script></block-definition><block-definition s="map %&apos;ring&apos; over %&apos;data&apos;" type="reporter" category="lists" selector="reportMap" primitive="reportMap"><header></header><code></code><translations></translations><inputs><input type="%repRing" readonly="true" irreplaceable="true"></input><input type="%l" readonly="true"></input></inputs><script><block s="doPrimitive"><l><bool>true</bool></l><l>reportMap</l></block><block s="doDeclareVariables"><list><l>result</l><l>implicit?</l></list></block><block s="doSetVar"><l>result</l><block s="reportNewList"><list></list></block></block><block s="doSetVar"><l>implicit?</l><block s="reportListIsEmpty"><block s="reportAttributeOf"><l><option>input names</option></l><block var="ring"/></block></block></block><block s="doWarp"><script><block s="doFor"><l>i</l><l>1</l><block s="reportListAttribute"><l><option>length</option></l><block var="data"/></block><script><block s="doAddToList"><block s="evaluate"><block var="ring"/><block s="reportIfElse"><block var="implicit?"/><block s="reportNewList"><list><block s="reportListItem"><block var="i"/><block var="data"/></block></list></block><block s="reportNewList"><list><block s="reportListItem"><block var="i"/><block var="data"/></block><block var="i"/><block var="data"/></list></block></block></block><block var="result"/></block></script></block></script></block><block s="doReport"><block var="result"/></block></script></block-definition></primitives><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" id="410"><pentrails>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAAAXNSR0IArs4c6QAAIABJREFUeF7t3XmcXHWV9/FzblV3FtawmFQlIIvs4ogoIwJOkqoEEVEZBnyccR18ZJCkqwOoiDwzcZvBjXR1AI2jjzK+RhlFHcCNpCpkBlxAHEBweUCBB9NVQRg6gizprrpn8quu7lRXeq+Q04FP/SPSVffc+76H+ta993d/V4UXAggggAACCOx0Ad3pFSmIAAIIIIAAAkIA0wQIIIAAAgg4CBDADuiURAABBBBAgACmBxBAAAEEEHAQIIAd0CmJAAIIIIAAAUwPIIAAAggg4CBAADugUxIBBBBAAAECmB5AAAEEEEDAQYAAdkCnJAIIIIAAAgQwPYAAAggggICDAAHsgE5JBBBAAAEECGB6AAEEEEAAAQcBAtgBnZIIIIAAAggQwPQAAggggAACDgIEsAM6JRFAAAEEECCA6QEEEEAAAQQcBAhgB3RKIoAAAgggQADTAwgggAACCDgIEMAO6JREAAEEEECAAKYHEEAAAQQQcBAggB3QKYkAAggggAABTA8ggAACCCDgIEAAO6BTEgEEEEAAAQKYHkAAAQQQQMBBgAB2QKckAggggAACBDA9gAACCCCAgIMAAeyATkkEEEAAAQQIYHoAAQQQQAABBwEC2AGdkggggAACCBDA9AACCCCAAAIOAgSwAzolEUAAAQQQIIDpAQQQQAABBBwECGAHdEoigAACCCBAANMDCCCAAAIIOAgQwA7olEQAAQQQQIAApgcQQAABBBBwECCAHdApiQACCCCAAAFMDyCAAAIIIOAgQAA7oFMSAQQQQAABApgeQAABBBBAwEGAAHZApyQCCCCAAAIEMD2AAAIIIICAgwAB7IBOSQQQQAABBAhgegABBBBAAAEHAQLYAZ2SCCCAAAIIEMD0AAIIIIAAAg4CBLADOiURQAABBBAggOkBBBBAAAEEHAQIYAd0SiKAAAIIIEAA0wMIIIAAAgg4CBDADuiURAABBBBAgACmBxBAAAEEEHAQIIAd0CmJAAIIIIAAAUwPIIAAAggg4CBAADugUxIBBBBAAAECmB5AAAEEEEDAQYAAdkCnJAIIIIAAAgQwPYAAAggggICDAAHsgE5JBBBAAAEECGB6AAEEEEAAAQcBAtgBnZIIIIAAAggQwPQAAggggAACDgIEsAM6JRFAAAEEECCA6QEEEEAAAQQcBAhgB3RKIoAAAgggQADTAwgggAACCDgIEMAO6JREAAEEEECAAKYHEEAAAQQQcBAggB3QKYkAAggggAABTA8ggAACCCDgIEAAO6BTEgEEEEAAAQKYHkAAAQQQQMBBgAB2QKckAggggAACBDA9gAACCCCAgIMAAeyATkkEEEAAAQQIYHoAAQQQQAABBwEC2AGdkggggAACCBDA9AACCCCAAAIOAgSwAzolEUAAAQQQIIDpAQQQQAABBBwECGAHdEoigAACCCBAANMDCCCAAAIIOAgQwA7olEQAAQQQQIAApgcQQAABBBBwECCAHdApiQACCCCAAAFMDyCAAAIIIOAgQAA7oFMSAQQQQAABApgeQAABBBBAwEGAAHZApyQCCCCAAAIEMD2AAAIIIICAgwAB7IBOSQQQQAABBAhgegABBBBAAAEHAQLYAZ2SCCCAAAIIEMD0AAIIIIAAAg4CBLADOiURQAABBBAggOkBBBBAAAEEHAQIYAd0SiKAAAIIIEAA0wMIIIAAAgg4CBDADuiURAABBBBAgACmBxBAAAEEEHAQIIAd0CmJAAIIIIAAAUwPIIAAAggg4CBAADugUxIBBBBAAAECmB5AAAEEEEDAQYAAdkCnJAIIIIAAAgQwPYAAAggggICDAAHsgE5JBBBAAAEECGB6AAEEEEAAAQcBAtgBnZIIIIAAAggQwPQAAggggAACDgIEsAM6JRFAAAEEECCA6QEEEEAAAQQcBAhgB3RKIoAAAgggQADTAwgggAACCDgIEMAO6JREAAEEEECAAKYHEEAAAQQQcBAggB3QKYkAAggggAABTA8ggAACCCDgIEAAO6BTEgEEEEAAAQKYHkAAAQQQQMBBgAB2QKckAggggAACBDA9gAACCCCAgIMAAeyATkkEEEAAAQQIYHoAAQQQQAABBwEC2AGdkggggAACCBDA9AACCCCAAAIOAgSwAzolEUAAAQQQIIDpAQQQQAABBBwECGAHdEoigAACCCBAANMDCCCAAAIIOAgQwA7olEQAAQQQQIAApgcQQAABBBBwECCAHdApiQACCCCAAAFMDyCAAAIIIOAgQAA7oFMSAQQQQAABApgeQAABBBBAwEGAAHZApyQCCCCAAAIEMD2AAAIIIICAgwAB7IBOSQQQQAABBAhgegABBBBAAAEHAQLYAZ2SCCCAAAIIEMD0AAIIIIAAAg4CBLADOiURQAABBBAggOkBBBBAAAEEHAQIYAd0SiKAAAIIIEAA0wMIIIAAAgg4CBDADuiURAABBBBAgACmBxBAAAEEEHAQIIAd0CmJAAIIIIAAAUwPIIAAAggg4CBAADugUxIBBBBAAAECmB5AAAEEEEDAQYAAdkCnJAIIIIAAAgQwPYAAAggggICDAAHsgE5JBBBAAAEECGB6AAEEEEAAAQcBAtgBnZIIIIAAAggQwPQAAggggAACDgIEsAM6JRFAAAEEECCA6QEEEEAAAQQcBAhgB3RKIoAAAgggQADTAwgggAACCDgIEMAO6JREAAEEEECAAKYHEEAAAQQQcBAggB3QKYkAAggggAABTA8ggAACCCDgIEAAO6BTEgEEEEAAAQKYHkAAAQQQQMBBgAB2QKckAggggAACBDA9gAACCCCAgIMAAeyATkkEEEAAAQQIYHoAAQQQQAABBwEC2AGdkggggAACCBDA9AACCCCAAAIOAgSwAzolEUAAAQQQIIDpAQQQQAABBBwECGAHdEoigAACCCBAANMDCCCAAAIIOAgQwA7olEQAAQQQQIAApgcQQAABBBBwECCAHdApiQACCCCAAAFMDyCAAAIIIOAgQAA7oFMSAQQQQAABApgeQAABBBBAwEGAAHZApyQCCCCAAAIEMD2AAAIIIICAgwAB7IBOSQQQQAABBAhgegABBBBAAAEHAQLYAZ2SCCCAAAIIEMD0AAIIIIAAAg4CBLADOiURQAABBBAggOkBBBBAAAEEHAQIYAd0SiKAAAIIIEAA0wMIIIAAAgg4CBDADuiURAABBBBAgACmBxBAAAEEEHAQIIAd0CmJAAIIIIAAAUwPIIAAAggg4CBAADugUxIBBBBAAAECmB5AAAEEEEDAQYAAdkCnJAIIIIAAAgQwPYAAAggggICDAAHsgE5JBBBAAAEECGB6AAEEEEAAAQcBAtgBnZIIIIAAAggQwPQAAggggAACDgIEsAM6JRFAAAEEECCA6QEEEEAAAQQcBAhgB3RKIoAAAgggQADTAwgggAACCDgIEMAO6JREAAEEEECAAKYHEEAAAQQQcBAggB3QKYkAAggggAABTA8ggAACCCDgIEAAO6BTEgEEEEAAAQKYHkAAAQQQQMBBgAB2QKckAggggAACBDA9gAACCCCAgIMAAeyATkkEEEAAAQQIYHoAAQQQQAABBwEC2AGdkggggAACCBDA9AACCCCAAAIOAgSwAzolEUAAAQQQIIDpAQQQQAABBBwECGAHdEoigAACCCBAANMDCCCAAAIIOAgQwA7olEQAAQQQQIAApgcQQAABBBBwECCAHdApiQACCCCAAAFMDyCAAAIIIOAgQAA7oFMSAQQQQAABApgeQAABBBBAwEGAAHZApyQCCCCAAAIEMD2AAAIIIICAgwAB7IBOSQQQQAABBAhgegABBBBAAAEHAQLYAZ2SCCCAAAIIEMD0AAIIIIAAAg4CBLADOiURQAABBBAggOkBBBBAAAEEHAQIYAd0SiKAAAIIIEAA0wMIIIAAAgg4CBDADuiURAABBBBAgACmBxBAAAEEEHAQIIAd0CmJAAIIIIAAAUwPIIAAAggg4CBAADugUxIBBBBAAAECmB5AAAEEEEDAQYAAdkCnJAIIIIAAAgQwPYAAAggggICDAAHsgE5JBBBAAAEECGB6AAEEEEAAAQcBAtgBnZIIIIAAAggQwPQAAggggAACDgIEsAM6JRFAAAEEECCA6QEEEEAAAQQcBAhgB3RKIoAAAgggQADTAwgggAACCDgIEMAO6JREAAEEEECAAKYHEEAAAQQQcBAggB3QKYkAAggggAABTA8ggAACCCDgIEAAO6BTEgEEEEAAAQKYHkAAAQQQQMBBgAB2QKckAggggAACBDA9gAACCCCAgIMAAeyATkkEEEAAAQQIYHoAAQQQQAABBwEC2AGdkggggAACCBDA9AACCCCAAAIOAgSwAzolEUAAAQQQIIDpAQQQQAABBBwECGAHdEoigAACCCBAANMDCCCAAAIIOAgQwA7olEQAAQQQQIAApgcQQAABBBBwECCAHdApiQACCCCAAAFMDyCAAAIIIOAgQAA7oFMSAQR2jMA35OxEObX5r1VtnsRbvtKx6ZZHd8ySd95SBrbh8WWx6pxQtU1t9bKe4n/vvDWgkpcAAewlP/m62pVedLhIlFHR/cPHTexRtcRtveW1d64UiSe/SD6BwK4tkE9n/0lELqlthcq9e7ZVXvXuhzY8uytt1Uo5un1OKv0bUTk4rHdC7YhlPcX7dqVtYF2nJkAAT81tp36qe372dIvlclF56SiFHxOx5blS8dqdumIvsGJr5Pi2Lek5nSLyFyZyT65U+NALjGDabW4+nb1TRF5eXzGTSI/IbVx3/7Rb0XFWaNt2WH/C7LBl5fX/f1fbBtZ38gIE8OTNdtonwqmpUqr306oSvvQb99UTIlIVkT3DD+baCpnlc+VieB+v50jgqv0X7l5pS4Yvxn3wfo6QJ7nY58MRcNjkhgB+Ju5LHrrisZvKk6Tg7bugAAE8jXda1/zsx9Tksvoq9qrYyhkz9ZrzHij8sZa5Irr6gMWHWFXPMtGnO0uFK6fx5uzyq0YAT79d+Hy4BlwP4P8SkeNEjACefm32nK0RAfyc0ba24FWpxa+INPqxiMwQkZJEunBXPLXWmsL0+jQBPL32x/NpbfLpzFoRXWJmTyYjOZhBWM+nvTv6thDA03Q/51PZ60TlLAmDq8xOz5WLP5zqqnans8dtHbB1gYi+TkTStWWKPCAm322L7cr3PVJ8YKRld6WyZ5nKsZHInblS4fqrDzx5Tl9l5odU5B0iMldEnhSx75nEKztLN/+/MdZPV6czbzLRd5vIIhHZQ0weFLVvxqLPNH4uMt2UK6/7/OC/++R+J+0xs21WR6zS1i7Rly4orf19WI9K/4yLTcN66AIR+W8Ruzah8g8jfXHVTuWnH1+sIlkTPUlNjhWtnb6PRexhUf1hRaqfv6jn5rsb16Wxdvj3kWq7mIXT/LPM5DZTGXGfjDWK9eq5mUP6o+gCUTtdRA4Jg15FpF9EHheRu83kis5y4aap7uuRPrfyoIUz9+5LLjeR3SIRU618qaNnw8aR3ts9b/EJ1Sh6ffhbwuQXHeXCt1tdl5VHn92+9+bNK0xslooUOkuFW8db5pXzM/v2my6vvc/k31aUC78O/9i8T8bqnZFqXJVeekCfxOdGZltm6uz8eaUbn+melzkrVr1YVV5Z/8w9qrJqeU/hq1o70TTyK2zXPr297zTVs0Xs1bW+Hng9IaIPmtjadGnOh86Rb4bLRWO+BgM49EGyv/LiCx7d8KfxPsPfd30BAnga7sOuF2XmalLuF9E9TORHm0uF105llHPt9Nz8zR8Tsw8MXSvefnuf1ljO79hU+JfmP3Wls19TkbeayNcTUvlorMnvismhI5D1RlJ5zfLSht80/y18+e/Tl/yKibxlgtR3bQ374wbfu2q/U1NRe+V3IjrL1M4wiTaq2Q0qcsB2yzO5V7e0ndTx+A/CNfKh16p05s2R6HfGqb9FxN7VOJCtsfYE1732ttFGsebT2XeLyFUhwEdbnpl+uLO87h8nU28i7+1OZTtN5YraWAKT7/eWK29aKRsqjZ9dMye717Oz5OcitX086j6dSL3G96yUhck56eSvROQwMbsiVy5eNN4yulOZU0z1P8P7LLYTOjcVfxb+eZx9Mqx3RqqxKr3opEgSt4ZTvUlJHFGx+FJROa9pjMXgRz+SKxVWjrScq9KvPaAibTeK6J+Nui0mD/aWS0eulF/1jbe9+XTmB/UfyATweFjPo78TwNNwZ3anl55hEt9QWzWzi3LlYvjinPRr+DVku1vMrrSE3q4m+5rJ6Sp6vojMFpE+FTu9o1QsNBbZFsD2XyryIhGdLyZfM4m/IAnbonH0HhE9t/7l9Y1cqbBdyHalsh9THbqO/bWoGl22/JG1D35q/4XzZrQnLhHTjvrn74xFbmg+Ah72hRuWY7IiDIJSs+ssitaIVZ8xjS5Sk78M6x6bXbqiXAy3pgy9QgCr6D+LyHcilTvjOP5lZPqYJWSuWfRmMXufqiRN5I9xFB9z4cb1PeHDVx94+pz+yrOrRTQcpYad0Sai4ci1XST8QJIwAne7V5TQFct/v67U+IcrFmSPTcZyu4nMVJH7ROwqUb1dqvZErLafSuJwUztUTO7oLBe+NemdPc4HaiGYavu6qP1V2BA1Oa+jXAgmQ698Kvs5Ufm72pkBlbfmegrf2FHrMXSKVeTfO0uFM8dbbnd6yVtNLPwAfLYSxS8ZfZ/UlvQX9TMykwngfjUpmOppJvJbVft4tRrfEWniNarysfrynjaRozpLhYcb13elSDQnnf2eiLxOxPpVdE2sdlNUlQckEbfFkjxcxQ7f+mNjz5mlzZedJz8PZzjGfA3+tyYmj8zUWYecV7rx6fE+w993fQECeBruw65U5lJV/URYtTiSRSs2FjZMdjUbv/DN5KbNMypvXtl0f+Sq9JKTIrFwunM3Ebmrt1T688Zf60NfCgPFYxNb3lkqXj24LvUvorUikhGRR5/te+bQDz72oycH/16/ZhruZ0yJyc295crS5qOu/PzMV8X0beGIK6F2WPMp5KYjnnDq3Eyso3E9rlhw4qxEvNs9tSM3k5/1lguvbjxj8OWDFs5810Mbtox2OnHV/Oz5kUl9u2xZrlQMR6nbvVq5BtyVznxERf8+HHmZ6JHNX+qT3b9Tef9n0gv3a5fkj0zkcBHZLJGeMDiuYNW87OlRJOFHXyRq+VzPjh1R35XKfF5VzxOxn+dKxcFTvaNuRvf8JReZ2WfC+Idq9NRLLtz4k2GXKob9cKhfPw093Hj2ZKSFbzsCHvyr3dKW3PKm9z18a+/gv+mel/kri/Sb4f+ryLkdpcL/bVxWOI3dL/FvtfZDLF6ZK63/yFT2R+NnGgJ4wkfNrdbk8/4CBLD/PthuDfLpzJUiekH4w1Rvys+nsyFQwhHun+K4cuyKTRseGmlT8/MzXWKaCwGrcXxix6b1tw++ryGATVXf39Gz7rPNy+hKZVdoOLVpUoktediKTT8cqtOVXnSESiJcu1M1eW/zEVdYVnd6cTitXDvaH+nHRlMAhyO3CzvKha7m9cinl3xRxM6dyhFE97zT9reoP1wH391MujrLhXCUvUMDeGj9RP7UL5WDLy5teMyj9VbNz5wYma4LP7rUZMOMcu/S6oGzdu+vzLxLRA7celT30972yqLmH2utrms+tSQnamG/DQvU7nR2mYmsFpHv5UqFNwzW2XY0bj/OlYonjVW/4frpJAPYft6W3LKkMXxDnXD9uRrrg6ISLgFd3tl0v3d9gGQ4Vd/SGarhAZz5soq+K4yNmOhp61b3CZ/3FyCA/ffBdmuwLfimdkvCzbIw+Yt08pcicriK3NRRKoTBVyO+8qlFx4smwvU1jdUuWtGz7XR3wynohzaXykeMdC0rn1r8HtGodiqz+cfC6gXZY+NYfhH+NpEAVrPXdpSLtzSuaFMA/2tHqfD2kY5k86lMl2jth8Skr6FN9Mh2ou8b8YdOOhMGwQ3eJnZ9NYovGDyturNbsDud6TDREIaqIh8wkSNF5G/DYLb2uPLK80f5sdbKeq5OZU+NBwatPW0VO6TzD8VHQv3uVHa9qSys/VDsSxw+eP/r1oGD15vIG0X0mlxp3buekwC2+C9z5fXbjQ0Ybz/XAto0XIIIU0c+Ymrv6ewphlPSow7YGs9uqH9NHugtl46ayHXj8ZbJ36e/AAE8DfdRw9HSlI6AG4/oxOQTuXJh8F7i7bb2igWn7pOoVsOv/T3Ddclcqbhs8E0TOS02VgCvOmjh3lFf8rcisq+p/WBzT/ENjaeGw33M3akl3xi4LmlPWkUOq38xD63nsEFYLQ5QClP+7TUvHa7xHWcqew0WaRzdPNYEG+N9MY/VSt37/PmeNmOPW0Xl2IEjJ6lYJDdEEt8oz8z4dvPAseeyLeuXDr4uIufUR8SH7wEz0TM7S+sGxh7s4Nfq9MIjY6n9KIxU5BUdpcKdXensgSr2mzDAboDELhi8tJBPZ+4Q0ePN7MOd5eKYg9KmegQci525olT89+ZNnch+zqczHxDRyxsGb4UBiNcm4up1yzbdHLZzUq+GH5DjHsVPasG8eVoLEMDTcPfk05lPimgYuSyRVE9eXrr5R5NZzfyCJYdJbOG2IDWxXGep2D3a5xu/bMJo585S4a93VACH5eTT2X/Y+r8DI0lNvprU6MPhVqKr9l84r9KW/HuR2qCfMDL387lyIZwyH/baEQE8MAAp8X5T/aDKtuAd0WSMGcUm8sU81n769NylL2qP4qtFawPGtv23Z1IRlW+ryOUhmCazr6f63toPr7gaRiaH28nCvlmVKxcunOryxvvcqr0X7h3NTj4oInurxG/sKK2/MZ9a/Hei0ee2jj5/SEQPCqfEO8qFxVcsOHFmIt4t/HBLR6rnLO9ZV7seO9rLI4Brk+Cksu8xlU+FbWpat1+LWVeqvM+XJnILUvhsd2rJJ0zt0olcxx7Pmr/vOgIE8DTcV/mG05Vm8t7OptGq463yqrmZQ6KEhsFPCTG7NNc0Krjx88NDRb6QKxfCLRm1V6tHwAPLWPJGFQv3kg5MmTnCy0Ru2tL3zNmNA7gG39ZqANe+KOcv+ZyZDW5XGJ38rXjgvtvaa2ccATdudve8zNEW6dtF7H+F4Gn4W1VML8qV1+XH28et/r0rlXmbql5T+4038Pq1Pvvkqzsev23YLVyt1hn8fO2WuHTvvVuPEo8U086wjV3pzFoVzZrGb1GLvmzhQUCRvlQryc2D1+QHj5bHWg+PAB5cn0/PXbpbW1R9m6ieGe4zH97n9uNqlDzjwo03DfXaaNvRlVpyqaqFgZccAe+optsFlkMAT8Od1DUv8yqN9Lb6UdL1uVLhzZNZzXCNqhLLg6q6h5mt6SwXw1HmiK/Vc5ceXI3i+8JtOCp6SUdp3ScH39hqANePesLkFgeG9YhUUya1631hEoww0UCY6eua3lLh2tHuc241gOuDjsLEDyFovtvbXjm7eYDRRI9sJ/q+yeyrgevk1iGi4R7h8CNli1Qrr8w9siGE1XPy6p6/6M/MEuGsShj9HmzCfde7iel1veX+tzaPVN9RKzF0XdcsHyWjT8VVu19FHq1ETx0VxbOv1zATlMiHothusEh/GS5L9Ev1kPEGrHkG8LAfVvuctqe09/+NReFItjZBzITnaM/PX5Ixi09Tk/ty5eIXdpQ5y5neAgTwNNw/4baaZLzbr03kxeE+SNHEqzt6bho2S9NYq12f+eluFT1GTO7tLVeOG+1LNT8/804x/Urtq8LihZ3l9bXJD8Kr1QCuTzwRbuEo91Wjw97/yNqnJsvdagA33tIVmb5qeXndHc3rMNFgXZM+Y/az9swDouG07fDr5ZPdrub35+dl3ilRbT+ISpTrKK0d9bJBK7W6552yv0Qzbq3fivRwv1SOb7PEO0R1cIT7qJNPtFI3fLbhOuf1ovad0HcmdnVnqXhBQx/+IorjS+Io+r6I/W5mafNR491HO10CeNAnnN5PxtW7bGCymF+lSnNeNtFT0a0a8/ldS4AAnqb7qzu9+IMmURjkEV53atx2asemH0z4YePd6czlJvrB2qQLsZ3Tsal4XfOmfmm/k/Z4qn32T0zsmDAZwV7tlWMbn6XacgCnsv8kKpeYyB+iZ9sOm8pAo1YDeNj19EhetnxjIdwvPPSqDQRLZ8PMTOHIPxprENaw06jhdp1S4aSpzFA2UsvVT0vXBu+o6sUj3fLVaquGa+H7pJPfNJFwRmVo8pX6TFU3DkwsIX0S6Zm5jeu+32q95s93pTPv2/os66vCvcAiuklEXh/HsnjFpsKG2uxvCblfVGepWN5ELxKV/8j1FMIZkzFf0y2A6z821otqmHb1vt5S5ZjxzioM3PokZ8WitwxOuznedvP3XV+AAJ6m+3DgqCxMmTc01d2DKvLxSvTU1wcnJQijWfdNLz08luobm5+G9JnU4hcnNbq7PuioV1Xe3tFTCF+qtVslwhdelNRrTOTUgZmR7O0d5eK/NnK0GsDd87LvsEjCdcbw+mmY+9lM/igq4RYUScZWitp08x8erj482hdU6wFcm/6xPpGCXdVbKnYMhuYVc7PHJhK1QTTbbtMa57GO+XQ2GIWBarGZXLy5XMg3hnD3S06bMeO3f4ibj9q60pklUdx3V8emW7b7EbUyffzsObb3GtHahCRxrHbyip7iT3Z0aw6bGa1pSsiBEckS7gEPg7J6E8nqKcsenvxo3rHWORioaJi45WkduCTwSDj9PNjP+XQ2/Ah4g4k8pbVT4sPHJIRlh8F71URin8Y6cSRfVNETReQ3GluYP33oNSOa/VDjrFKNE3FMdRT0qlT2qERUbZ/Xs9+9Ix3Z1p7fbRJmEZttJv/SWS68cyyXcMQcxdW76tOrbonVFj0X+39H9xPLa12AAG7d8DlbQv02jfCUlCMaipiJPKEDD1QY83nA9YE24bRmbQDU1ll9fh+r/EzN9hPRMHnI1gKvAAAGzklEQVR8mFJRVLR7eWldZ/P9ta0GcJgHek5fMtxnOep9yPXt6jOR71jVLl3R9GCIVgO4PqnCLwdOG9deD4vZ7aJ6TG1A0MBo5KKY7SGqJ4z3nN/wsAKLonCaPjylKnx4Uyz20/DPkejRJnJoQu3oZT3FMAhu6NXw4Pg/hakozewBUQ0Pg1ggoq8QkZm15amuWd6z7vyxHgIwlYbLL1jyeokt7Iv2rUfAd/VXo5ObLwmEh2+o1oIjPLPh7t37nj3l3IaZzaZSt/Ezq+a97qBIK/eLSjL8+8HTz4PvWZ3OvCUWvXbw/6vJiuZJVxpOY09odWKpnryi4S6CHRHADbfehYcshIlnwj3BT4jJ7qL6soF9WnuVEha/Zll5fXiG9Kivhh8mtfeY2T92losfntAG8qZdWoAAnua7LwxkSsxOXGbb5m0eYY11o0l8cWep+G/Nf+xOL1lqYmECiMNG+OAjKnLp8lLhyyN94bccwLXbf5Kr65Pdm4jdE+b7qM+4FO4HnRXmRm5Yr9LWEdEnNk7T2GoAh2V3pbMnRxLmsN7uAQ5b1PSzj5d7PjInnfpueBzceAEclndFOvumhMiaoVt4mmBHmr0sn87Wn/c6asOFmbE+mirNuXpHXy8MA+3iRByufYcjx6dUqyd1ND35qb5W2pXO/LMOzO8dzovs0EFZtScZtc/63dYD2f3D0iPRU5aX1g3dYle/NSqE2cARblQ9Pbfx5mGnwqdDAHelM+eq6BfH+OqI1fRbsdrFE5lydNV+p6Si9hnh0si+O+LpZ9P8K43VaxAggHeRdgiTSOw7f8HJVbHjzGyPhIapH60sEt/aWbo5HG2NOgtPuM6Zn7v0hEQyfk3FZK8wsCsSu2NGafN/jDfApRWe7vnZy8xqE9vHscbnruhZXxtk1Pj6bHrpAQmLP661RwvWjoo+21kqXtxK3ZE+u0aOb9uS3ut1ZtHLVDVhJg/qluT1U7kuHZYflvdMas7iSPXlVbFZkUm/qW0abX+E66z7LkgeFVf15aI2NxbZPSxHVZ80k5/+sdR/23jXCXe0CcubukDtmnUUHW9R/JKtjy7cKzZNhB5Q1QcijddO9nm+tXv3q3aOmP04t6l489TXjE/uSgIE8K60t3ahda0/tzWcbgynftfmBqbDHPFHQuNtU/X3huvSvBBAAIHntQAB/LzevX4bN3wO57Fv2akPAAozd83cev3si7lS8X/7rTmVEUAAgZ0jQADvHOcXXJX6PNDhet5+4QkvsVUWj/REpqsPPHlOf2XGNSJ6xsBzaC2b6+EU3AuuYdhgBF6AAgTwC3Cn76xNzs/P/B8x/Wi9Xl84vSyq98RmfZFoJBofLKZhXuTZA6en7dO5UvGSVp4qs7O2jToIIIBAqwIEcKuCfH5UgYF5mDPvNQsPopf0GG+8d+vF4ZWd5cK34EQAAQReKAIE8AtlTztuZwjiK+dmXxpHdqJG+qKqSTKMGI0j7ZFK/J/N9/46riqlEUAAgZ0mQADvNGoKIYAAAgggsE2AAKYbEEAAAQQQcBAggB3QKYkAAggggAABTA8ggAACCCDgIEAAO6BTEgEEEEAAAQKYHkAAAQQQQMBBgAB2QKckAggggAACBDA9gAACCCCAgIMAAeyATkkEEEAAAQQIYHoAAQQQQAABBwEC2AGdkggggAACCBDA9AACCCCAAAIOAgSwAzolEUAAAQQQIIDpAQQQQAABBBwECGAHdEoigAACCCBAANMDCCCAAAIIOAgQwA7olEQAAQQQQIAApgcQQAABBBBwECCAHdApiQACCCCAAAFMDyCAAAIIIOAgQAA7oFMSAQQQQAABApgeQAABBBBAwEGAAHZApyQCCCCAAAIEMD2AAAIIIICAgwAB7IBOSQQQQAABBAhgegABBBBAAAEHAQLYAZ2SCCCAAAIIEMD0AAIIIIAAAg4CBLADOiURQAABBBAggOkBBBBAAAEEHAQIYAd0SiKAAAIIIEAA0wMIIIAAAgg4CBDADuiURAABBBBAgACmBxBAAAEEEHAQIIAd0CmJAAIIIIAAAUwPIIAAAggg4CBAADugUxIBBBBAAAECmB5AAAEEEEDAQYAAdkCnJAIIIIAAAgQwPYAAAggggICDAAHsgE5JBBBAAAEECGB6AAEEEEAAAQcBAtgBnZIIIIAAAggQwPQAAggggAACDgIEsAM6JRFAAAEEECCA6QEEEEAAAQQcBAhgB3RKIoAAAgggQADTAwgggAACCDgIEMAO6JREAAEEEECAAKYHEEAAAQQQcBAggB3QKYkAAggggAABTA8ggAACCCDgIEAAO6BTEgEEEEAAgf8BWjl4DnloahsAAAAASUVORK5CYII=</pentrails><costumes><list struct="atomic" id="411"></list></costumes><sounds><list struct="atomic" id="412"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites select="1"><sprite name="Square" idx="1" x="50" y="-50" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="1" color="80,80,80,1" pen="tip" id="417"><costumes><list id="418"><item><ref mediaID="Square_cst_Empty"></ref></item><item><ref mediaID="Square_cst_X"></ref></item><item><ref mediaID="Square_cst_O"></ref></item></list></costumes><sounds><list struct="atomic" id="419"></list></sounds><blocks></blocks><variables><variable name="position number"><l>0</l></variable></variables><scripts><script x="13.000000000000114" y="10"><block s="receiveGo"></block><custom-block s="makeBoard"></custom-block><block s="doSetVar"><l>X&apos;s turn?</l><block s="reportNewList"><list><l>e</l><l>e</l><l>e</l><l>e</l><l>e</l><l>e</l><l></l><l>e</l><l>e</l></list></block></block><block s="doSetVar"><l>X&apos;s turn?</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><block s="doSetVar"><l>playing?</l><block s="reportBoolean"><l><bool>true</bool></l></block></block></script><script x="307.4244140625006" y="14.000000000000853"><block s="receiveMessage"><l><option>any message</option></l><list><l>message</l></list></block><block s="doIf"><block s="reportVariadicEquals"><list><block var="message"/><block var="position #"/></list></block><script><block s="doIf"><block var="playing?"/><script><block s="doSwitchToCostume"><l>O</l></block><block s="doSetVar"><l>X&apos;s turn?</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><block s="doReplaceInList"><block var="position #"/><block var="board"/><l>O</l></block><custom-block s="win or tie?"></custom-block></script><list></list></block></script><list></list></block></script><script x="10" y="173.66666666666737"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="doIf"><block var="playing?"/><script><block s="doIf"><block s="reportVariadicEquals"><list><block s="getCostumeIdx"></block><l>1</l></list></block><script><block s="doIf"><block var="X&apos;s turn?"/><script><block s="doSwitchToCostume"><l>X</l></block><block s="doSetVar"><l>X&apos;s turn?</l><block s="reportBoolean"><l><bool>false</bool></l></block></block><block s="doReplaceInList"><block var="position #"/><block var="board"/><l>x</l></block><custom-block s="win or tie?"></custom-block><block s="doBroadcast"><custom-block s="best moves (2)"></custom-block><list></list></block></script><list></list></block></script><list></list></block></script><list></list></block></script><script x="288.9999999999989" y="224.3333333333336"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="doIf"><block s="reportVariadicEquals"><list><block s="getCostumeIdx"></block><l>1</l></list></block><script><block s="doIfElse"><block s="reportVariadicEquals"><list><block var="X&apos;s turn?"/><block s="reportBoolean"><l><bool>true</bool></l></block></list></block><script><block s="doSwitchToCostume"><l>X</l></block><block s="doSetVar"><l>X&apos;s turn?</l><block s="reportBoolean"><l><bool>false</bool></l></block></block><block s="doReplaceInList"><block var="position #"/><block var="board"/><l>O</l></block><block s="doSayFor"><custom-block s="Did we win?"></custom-block><custom-block s="status of triple %s"><l></l></custom-block></block></script><script><block s="doSwitchToCostume"><l>O</l></block><block s="doSetVar"><l>X&apos;s turn?</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><block s="doReplaceInList"><block var="position #"/><block var="board"/><l>O</l></block><block s="doSayFor"><custom-block s="won? %s"><l></l></custom-block><custom-block s="status of triple %s"><custom-block s="possible winning triples"></custom-block></custom-block></block></script></block></script><list></list></block></script></scripts></sprite><sprite name="Sprite" idx="2" x="123.90625" y="-120" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="0" color="145,26,68,1" pen="tip" id="590"><costumes><list struct="atomic" id="591"></list></costumes><sounds><list struct="atomic" id="592"></list></sounds><blocks></blocks><variables></variables><scripts><script x="16" y="87.33333333333337"><block s="receiveMessage"><l>x win</l><list></list></block><block s="gotoXY"><l>-140</l><l>-120</l></block><block s="show"></block><block s="setColor"><color>145,26,68,1</color></block><block s="write"><l>Congrats x wins!</l><l>30</l></block><block s="hide"></block></script><script x="13" y="263.3333333333335"><block s="receiveMessage"><l>o win</l><list></list></block><block s="gotoXY"><l>-140</l><l>-120</l></block><block s="show"></block><block s="setColor"><color>145,26,68,1</color></block><block s="write"><l>Congrats o wins!</l><l>30</l></block><block s="hide"></block></script></scripts></sprite><watcher var="X&apos;s turn?" style="normal" x="5" y="5" color="243,118,29" hidden="true"/><watcher var="board" style="normal" x="10" y="10" color="243,118,29"/><watcher scope="Square" var="position number" style="normal" x="10" y="31.000001999999995" color="243,118,29"/></sprites></stage><variables><variable name="X&apos;s turn?"><bool>false</bool></variable><variable name="position #"><l>10</l></variable><variable name="row"><l>0</l></variable><variable name="playing?"><bool>true</bool></variable><variable name="board"><l>0</l></variable><variable name="message"><l>0</l></variable></variables></scene></scenes></project><media name="U3L3-TicTacToe " app="Snap! 10.1-dev, https://snap.berkeley.edu" version="2"><costume name="Empty" center-x="26" center-y="26" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAAAAXNSR0IArs4c6QAAAMdJREFUaEPtmrENgmAUBh9TYEfBIs6i4lAEZ6GVGAs3MjFxgK+5wJ+jv3y8O0q6auzpqupcVWsLdw3D+P4ddLlO62OZD33Tc3vVdLt/PGivGS201zL/97KQhWADfnKw8HjOQrEyGLAQLDyes1CsDAYsBAuP5ywUK4MBC8HC4zkLxcpgwEKw8HjOQrEyGLAQLDyes1CsDAYsBAuP5ywUK4MBC8HC4zkLxcpgwEKw8HjOQrEyGLAQLDyes1CsDAbaLtTKH419f9q+t56dV83eYNkAAAAASUVORK5CYII=" mediaID="Square_cst_Empty"/><costume name="X" center-x="26" center-y="26" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAAAAXNSR0IArs4c6QAAAgVJREFUaEPt2rtOAkEUBuBDpTRgTdRQ8gRIaUUMoIk3RAQlEWm9FpYG7IzxKSyoLC3VTmPUxkvrLVFLLOhMzJJgREHOnDlnZxeh22Qv882/O+HPrgcAgvH4xKbP19MLLv9Vqx/XHgAYDocjh9mFnKtBb68vcHV58VADJZPpg3J5v8/NAZ2encN2qdgFOTbE/5nQ49MzDA70OyqVVmNCJbSYL0AgEIBSccsRqJvbOxhNJGBndw8mx8caxoQCVSrvkF8qQCgUMo6qY+Yy2aZjQYGsKXACqh3GGicaZBqFwSiDTKGwGBLIbpQKhgyyC6WK0QJJoygYbZAUiophAXGjdDBsIC6ULoYVpIviwLCDqCgujAhIFcWJEQNhUdwYUVA7lARGHNQKJYWxBfQTlUrN1MpZqz7T0NYIG0r1gXD+r0OsPpXJzsPJ8REsr6yKFUXbQNZtFo/FwOv1wtR00t2g78/MxvqaaJ0XT6jZAiBZ50VBf61mUigxEGZplkCJgDCY+vLHjWIHqWAkUKwgCoYbxQbSwXCiWEAcGC6UNogTw4HSAklgdFFkkCRGB0UC2YGhopRBdmIoKCWQCYwqCg0yiVFBoUBOwGBRKFA0OgJDkYhYy1St9vU/tKnZNO2lsRNf61sov9/3ay5QCanOoMn9uyCTs4+5dmcn1GkfAAYBIIeJ1QX73H8CynJ8DoPjGXcAAAAASUVORK5CYII=" mediaID="Square_cst_X"/><costume name="O" center-x="26" center-y="26" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAAAAXNSR0IArs4c6QAABGBJREFUaEPtmktME1EUhv+uFXCnCQIRBOpjYYtGN4qiIUbwFTUKPmKUghIXEKNxQyllY5ACC+ODYmJUoPiIDzAxREV04QNpNRFESDSCzx0PXWPOmJu0dKZzZ+ZOQWSSpovee+Z85z9z7r1nasE0uywA1gLomA5cSUkp3RLQocOOjksN9f8004uXXXAUFL6dAZqqMs4oxKtM+8PH8PsDGOj/gI7Hj/Dp08ewqTt37UZ8fDyW2ezIWpeJxIT5vOYVxwlVaHDoC7zeBjReu4qM5Sukj91ugzU9TdZZunnfh368Cfhx7+4dafyevHzs2L5FN5gQoGCQwiPFyM/brSvat27fg6+5CSPDwyg6WqwLzDDQ5SuNcLucIJCjRQ7ExcXqji6bSOlaXVWFhMRElJc7NQVHN9DIyCjKXRXo7emBu7ISq1auMAwSbIDsn7/oRf2Fc7hQ70X2hiwu+7qA6GYFjkLExsaixlMtRBUlbykNTxwvxRlPLVcKagZiMFarFZVuF1fUjA7q6X2Pzbm5XFCagQ4XFCImJgZ1tR6jfmqaT1BLlyzG8xevIqa3JqCz5y6i80kHGrz1pqaZWvoFAgHF+3MDsQi96+nFksWLNEVX5OCS0uOSOaUM4QaiVLPZM3CsuEikf5pt0TNss9nQ1OyTTT0uIBqUn7cHkaTW7JmBCZT6AX835I46XEAk88LUtElXh8WAqdTa1haW/qpAtK1JSkzA8PDIpBQCJSFPV3nw+9dY2NKhCkRbG9o8RrtMq2UkFanSklK0tz8IGaoKROm2ek0m1yqt5oTo35OTUzAx7VSB5CaJdkyvPblgqwJZLBaMj4/rvaep86ja0RW8lEQEoh89Hg9uXPeZ6phe43TMaPH5Qsq3KpDX65Wt93qdEDmPnJ/o3wyQyAgbtaVZIaVab9QRUfPp8PfsaWfIGvl/VTmKZHb2RlN6BiJUohPAppzckEVfVaEypwspC1Nx8MBeET4ItUGL/pPOzpCukCoQ65VNtbWItbo07+Voqz5nThw+Dw5p6o8JlULGGGXOrNkxOHXy7wmWXaoK0UClyWY7rWQ/UpC5gOhMtDYzc0qdWH/++C7bRuMCYirRd7R6cUrqsAOn0iPADcRUUmpORCv9qFSnpqWHPTuaniE2mLVlJ6tZQsfu7tddEfuC3AoxKCoQfX19UW82smDKNUY0V7mJ6RRtKF4Y8lOzQhOVcrnKTe2k0qm0proqrHeg9MzqBiKDlNP0/sbpcgvfGlERqqhwY2hwELV1tdxBMwTEJHaWlUlv2xwOh+EXX7RoXm1sllTR81bQMBBBBTuxLmt92A6Yp6STIk3NLZLiZENvcIQAMYcJ7PbdVtxva5XK65at26QW8vIMuzRkkTVd6r7SwXFs7Be+fvuOgYEBaSx99u7bj5ycHEMqCwUKVoIi3vXaLzlM/1UYHR3FzRst0pAFC5IlFejFGQMW9Y7WNCCeNDNjzAyQGVEVaXN6KzRd/tE4d+68l38AHzaJdYJvYYIAAAAASUVORK5CYII=" mediaID="Square_cst_O"/></media></snapdata>