<snapdata remixID="13070191"><project name="U3L3-TicTacToe" 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"><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="doSetVar"><l>square number</l><l>0</l></block><block s="show"></block><block s="doFor"><l>row</l><l>1</l><l>3</l><script><block s="doFor"><l>column</l><l>1</l><l>3</l><script><block s="doChangeVar"><l>square number</l><l>1</l></block><block s="createClone"><l><option>myself</option></l></block><block s="changeXPosition"><l>50</l></block></script></block><block s="changeXPosition"><l>-150</l></block><block s="changeYPosition"><l>-50</l></block></script></block><block s="hide"></block></script></block-definition><block-definition s="TicTacToe wins" 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;list&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportListItem"><l></l><block var="board"/></block></autolambda><list></list></block><block var="list"/></block></block></script></block-definition><block-definition s="won? %&apos;winning player&apos;" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doForEach"><l>item</l><block s="reportMap"><block s="reifyReporter"><autolambda><custom-block s="status of triple %l"><l/></custom-block></autolambda><list></list></block><custom-block s="TicTacToe wins"></custom-block></block><script><block s="doIfElse"><block s="reportVariadicAnd"><list><block s="reportListContainsItem"><block var="item"/><l>X</l></block><block s="reportListContainsItem"><block var="item"/><l>O</l></block></list></block><script></script><script><block s="doIfElse"><block s="reportListContainsItem"><block var="item"/><l>Empty</l></block><script></script><script><block s="doIf"><block s="reportListContainsItem"><block var="item"/><block var="winning player"/></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script><list></list></block></script></block></script></block></script></block><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block-definition><block-definition s="statusOfAllWinningTriples" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doDeclareVariables"><list><l>a</l></list></block><block s="doDeclareVariables"><list><l>b</l></list></block><block s="doSetVar"><l>a</l><custom-block s="possibleWinningTriples"></custom-block></block><block s="doSetVar"><l>b</l><block s="reportNewList"><list></list></block></block><block s="doForEach"><l>item</l><block var="a"/><script><block s="doAddToList"><custom-block s="statusOfTriple %s"><block var="item"/></custom-block><block var="b"/></block></script></block><block s="doReport"><block var="b"/></block></script></block-definition><block-definition s="possibleWinningTriples" type="reporter" category="pen"><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="statusOfTriple %&apos;List&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doDeclareVariables"><list><l>a</l></list></block><block s="doSetVar"><l>a</l><block s="reportNewList"><list></list></block></block><block s="doForEach"><l>item</l><block var="List"/><script><block s="doAddToList"><block s="reportListItem"><block var="item"/><block var="boardlist"/></block><block var="a"/></block></script></block><block s="doReport"><block var="a"/></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="384"><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="385"></list></costumes><sounds><list struct="atomic" id="386"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites select="1"><sprite name="Square" idx="1" x="-50" y="-120" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="false" hidden="true" costume="1" color="80,80,80,1" pen="tip" id="391"><costumes><list id="392"><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="393"></list></sounds><blocks></blocks><variables><variable name="square number"><l>9</l></variable></variables><scripts><script x="10" y="28"><block s="receiveGo"></block><block s="doSetVar"><l>counter</l><l>0</l></block><block s="doWait"><l>0.1</l></block><block s="doSwitchToCostume"><l>Empty</l></block><block s="gotoXY"><l>-50</l><l>30</l></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>Empty</l><l>Empty</l><l>Empty</l><l>Empty</l><l>Empty</l><l>Empty</l><l>Empty</l><l>Empty</l><l>Empty</l></list></block></block></script><script x="782.6666666666662" y="194.33333333333331"><block s="receiveMessage"><l><option>any message</option></l><list></list></block><block s="doIf"><block s="reportVariadicEquals"><list><l></l><block var="square number"/></list></block><script></script><list></list></block></script><script x="38.99999999999639" y="270.99999999999994"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="doIf"><block s="reportVariadicEquals"><list><block s="reportAttributeOf"><l><option>costume name</option></l><block s="reportGet"><l><option>self</option></l></block></block><l>Empty</l></list></block><script><block s="doIfElse"><block var="X&apos;s turn?"/><script><block s="doSwitchToCostume"><l>X</l></block><block s="doReplaceInList"><block var="square number"/><block var="board"/><l>X</l></block><block s="doIfElse"><custom-block s="won? %s"><l>X</l></custom-block><script><block s="doSayFor"><l>X is the winner</l><l>2</l></block></script><script><block s="doSetVar"><l>X&apos;s turn?</l><block s="reportBoolean"><l><bool>false</bool></l></block></block><block s="doChangeVar"><l>counter</l><l>1</l></block></script></block></script><script><block s="doSwitchToCostume"><l>O</l></block><block s="doReplaceInList"><block var="square number"/><block var="board"/><l>O</l></block><block s="doIfElse"><custom-block s="won? %s"><l>O</l></custom-block><script><block s="doSayFor"><l>O is the winner</l><l>2</l></block></script><script><block s="doSetVar"><l>X&apos;s turn?</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><block s="doChangeVar"><l>counter</l><l>1</l></block></script></block></script></block></script><list></list></block></script><script x="521.9999999999994" y="123.33333333333428"><block s="receiveMessage"><l><option>any message</option></l><list></list></block><block s="hide"></block></script><script x="454" y="343"><custom-block s="statusOfAllWinningTriples"></custom-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="8" y="0" color="243,118,29" extX="80" extY="70"/><watcher scope="Square" var="square number" style="normal" x="10" y="10" color="243,118,29" hidden="true"/><watcher var="counter" style="normal" x="115" y="18.000001999999995" color="243,118,29"/><sprite name="Sprite" idx="2" x="162" y="-109" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="0" color="188.7,33.96599999999999,0,1" pen="tip" id="527"><costumes><list struct="atomic" id="528"></list></costumes><sounds><list struct="atomic" id="529"></list></sounds><blocks></blocks><variables></variables><scripts><script x="48" y="111.33333333333334"><block s="receiveGo"></block><block s="hide"></block></script><script x="207" y="119.33333333333334"><block s="receiveCondition"><block s="reportVariadicEquals"><list><block var="counter"/><l>9</l></list></block></block><block s="doSayFor"><l>tie game</l><l>2</l></block><block s="show"></block></script></scripts></sprite></sprites></stage><variables><variable name="X&apos;s turn?"><bool>true</bool></variable><variable name="board"><list struct="atomic" id="547">Empty,Empty,Empty,Empty,Empty,Empty,Empty,Empty,Empty</list></variable><variable name="counter"><l>0</l></variable><variable name="boardlist"><list struct="atomic" id="548">x,o,x,o,x,x,o,x,o</list></variable></variables></scene></scenes></project><media name="U3L3-TicTacToe" 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>