<snapdata remixID="13150025"><project name="U3L3-TicTacToe (hard)" app="Snap! 9.0, 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 (hard)"><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="errorObsolete"></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="doGlide"><l>0</l><l>-1000</l><l>0</l></block><block s="doSwitchToCostume"><l>Empty</l></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><block s="doDeclareVariables"><list><l>x</l><l>y</l><l>board-local</l></list></block><block s="doSetVar"><l>x</l><block s="reportNewList"><list><l>-50</l><l>0</l><l>50</l></list></block></block><block s="doSetVar"><l>y</l><block s="reportNewList"><list><l>50</l><l>0</l><l>-50</l></list></block></block><block s="doSetVar"><l>board-local</l><l>0</l></block><block s="doSetVar"><l>position #</l><block s="reportNewList"><list></list></block></block><block s="doForEach"><l>y-item</l><block var="y"/><script><block s="doForEach"><l>x-item</l><block var="x"/><script><block s="createClone"><l><option>myself</option></l></block><block s="doChangeVar"><l>position #</l><l>1</l></block><block s="doGlide"><l>0</l><block var="x-item"/><block var="y-item"/></block></script></block></script></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>5</l><l>9</l></list></block><block s="reportNewList"><list><l>3</l><l>5</l><l>7</l></list></block><block s="reportNewList"><list><l>1</l><l>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></list></block></block></script></block-definition><block-definition s="status of triple %&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><custom-block s="Possible Winning Triples"></custom-block></block></block></script></block-definition><block-definition s="Did we Win? %&apos;X&apos;" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doDeclareVariables"><list><l>a</l></list></block><block s="doSetVar"><l>a</l><l>0</l></block><block s="doForEach"><l>item</l><block var="X"/><script><block s="doIf"><block s="reportVariadicEquals"><list><block var="item"/><block s="reportNewList"><list><l>X</l><l>X</l><l>X</l></list></block></list></block><script><block s="doSetVar"><l>a</l><l>1</l></block></script><list><block s="reportVariadicEquals"><list><block var="item"/><block s="reportNewList"><list><l>O</l><l>O</l><l>O</l></list></block></list></block><script><block s="doSetVar"><l>a</l><l>2</l></block></script></list></block></script></block><block s="doIf"><block s="reportVariadicAnd"><list><block s="reportVariadicEquals"><list><block var="a"/><l>0</l></list></block><block s="reportNot"><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></block></list></block><script><block s="doReport"><l>tie</l></block></script><list><block s="reportVariadicEquals"><list><block var="a"/><l>1</l></list></block><script><block s="doReport"><l>x wins</l></block></script><block s="reportVariadicEquals"><list><block var="a"/><l>2</l></list></block><script><block s="doReport"><l>o wins</l></block></script></list></block></script><scripts><script x="344.0542968750001" y="186.49999999999994"><custom-block s="Board has numbers"></custom-block></script></scripts></block-definition><block-definition s="Board has numbers" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><block s="reportListItem"><l>1</l><block var="board"/></block><l>1</l></list></block><block s="reportVariadicEquals"><list><block s="reportListItem"><l>2</l><block var="board"/></block><l>2</l></list></block><block s="reportVariadicEquals"><list><block s="reportListItem"><l>3</l><block var="board"/></block><l>3</l></list></block><block s="reportVariadicEquals"><list><block s="reportListItem"><l>4</l><block var="board"/></block><l>4</l></list></block><block s="reportVariadicEquals"><list><block s="reportListItem"><l>5</l><block var="board"/></block><l>5</l></list></block><block s="reportVariadicEquals"><list><block s="reportListItem"><l>6</l><block var="board"/></block><l>6</l></list></block><block s="reportVariadicEquals"><list><block s="reportListItem"><l>7</l><block var="board"/></block><l>7</l></list></block><block s="reportVariadicEquals"><list><block s="reportListItem"><l>8</l><block var="board"/></block><l>8</l></list></block><block s="reportVariadicEquals"><list><block s="reportListItem"><l>9</l><block var="board"/></block><l>9</l></list></block></list></block></block></script></block-definition></blocks><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="439"><pentrails>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAAAXNSR0IArs4c6QAADoVJREFUeF7t1cEJAAAIxDDdf2m3sJ+4wEEQuuMIECBAgACBd4F9XzRIgAABAgQIjAB7AgIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+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+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECByxcQFpoRMBzwAAAABJRU5ErkJggg==</pentrails><costumes><list struct="atomic" id="440"></list></costumes><sounds><list struct="atomic" id="441"></list></sounds><variables></variables><blocks></blocks><scripts><script x="20" y="20"><custom-block s="Possible Winning Triples"></custom-block></script></scripts><sprites select="1"><sprite name="Square" idx="1" x="50" y="-50" heading="90" scale="1" volume="100" pan="0" rotation="0" draggable="false" costume="2" color="80,80,80,1" pen="tip" id="447"><costumes><list id="448"><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="449"></list></sounds><blocks></blocks><variables><variable name="position #"><l>9</l></variable></variables><scripts><script x="10" y="10"><block s="doWearNextCostume"></block></script><script x="111.04511718749995" y="61.63333333333344"><block s="doAddToList"><block s="reportListItem"><block s="reportVariadicSum"><list><block var="board-local"/><l>1</l></list></block><block var="board"/></block><block var="position #"/></block><block s="doChangeVar"><l>board-local</l><l>1</l></block></script><script x="827.7333333333333" y="46.99999999999994"><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></script><script x="295.4530273437499" y="607.8166666666664"><block s="reportVariadicEquals"><list><block var="item"/><block s="reportVariadicOr"><list><block s="reportNewList"><list><l>X</l><l>X</l><l>X</l></list></block><block s="reportNewList"><list><l>O</l><l>O</l><l>O</l></list></block></list></block></list></block></script><script x="868.77587890625" y="749.8166666666666"><block s="reportVariadicEquals"><list><custom-block s="Board has numbers"></custom-block><block s="reportBoolean"><l><bool>false</bool></l></block></list></block></script><script x="30" y="143"><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>X</l></block><block s="doSayFor"><custom-block s="Did we Win? %l"><custom-block s="status of triple %l"><custom-block s="Possible Winning Triples"></custom-block></custom-block></custom-block><l>2</l></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="Did we Win? %l"><custom-block s="status of triple %l"><custom-block s="Possible Winning Triples"></custom-block></custom-block></custom-block><l>2</l></block></script></block></script><list></list></block></script></scripts></sprite><watcher scope="Square" var="position #" style="normal" x="7.164179104477283" y="73.79104620895522" color="243,118,29"/><watcher var="board" style="normal" x="7.880597014925707" y="147.5820895522388" color="243,118,29" extX="80" extY="70"/></sprites></stage><variables><variable name="X&apos;s turn?"><bool>false</bool></variable><variable name="board"><list struct="atomic" id="573">X,X,O,O,O,X,X,O,X</list></variable></variables></scene></scenes></project><media name="U3L3-TicTacToe (hard)" app="Snap! 9.0, 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>