<snapdata remixID="14143506"><project name="TicTacToeChallenge" app="Snap! 10.3.6, https://snap.berkeley.edu" version="2"><notes></notes><thumbnail>data:image/png;base64,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</thumbnail><scenes select="1"><scene name="TicTacToeChallenge"><notes></notes><hidden></hidden><headers></headers><code></code><blocks><block-definition s="Xs_turn" type="predicate" category="variables"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><l></l></block></script></block-definition><block-definition s="createBoard" type="command" category="control"><header></header><code></code><translations></translations><inputs></inputs><script><block s="gotoXY"><l>-50</l><l>50</l></block><block s="doSetVar"><l>posNumber</l><l>1</l></block><block s="doAddToList"><block var="posNumber"/><block var="board"/></block><block s="doRepeat"><l>2</l><script><block s="doRepeat"><l>3</l><script><block s="createClone"><l><option>myself</option></l></block><block s="gotoXY"><block s="reportVariadicSum"><list><block s="xPosition"></block><l>50</l></list></block><block s="yPosition"></block></block><block s="doSetVar"><l>posNumber</l><block s="reportVariadicSum"><list><block var="posNumber"/><l>1</l></list></block></block><block s="doAddToList"><block var="posNumber"/><block var="board"/></block></script></block><block s="gotoXY"><l>-50</l><block s="reportVariadicSum"><list><block s="yPosition"></block><l>-50</l></list></block></block></script></block><block s="doRepeat"><l>2</l><script><block s="createClone"><l><option>myself</option></l></block><block s="gotoXY"><block s="reportVariadicSum"><list><block s="xPosition"></block><l>50</l></list></block><block s="yPosition"></block></block><block s="doSetVar"><l>posNumber</l><block s="reportVariadicSum"><list><block var="posNumber"/><l>1</l></list></block></block><block s="doAddToList"><block var="posNumber"/><block var="board"/></block></script></block></script></block-definition><block-definition s="possible winning triples" 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_Triples" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="reportNewList"><list><block s="reportNewList"><list><block s="reportListItem"><l>1</l><block var="board"/></block><block s="reportListItem"><l>2</l><block var="board"/></block><block s="reportListItem"><l>3</l><block var="board"/></block></list></block><block s="reportNewList"><list><block s="reportListItem"><l>4</l><block var="board"/></block><block s="reportListItem"><l>5</l><block var="board"/></block><block s="reportListItem"><l>6</l><block var="board"/></block></list></block><block s="reportNewList"><list><block s="reportListItem"><l>7</l><block var="board"/></block><block s="reportListItem"><l>8</l><block var="board"/></block><block s="reportListItem"><l>9</l><block var="board"/></block></list></block><block s="reportNewList"><list><block s="reportListItem"><l>1</l><block var="board"/></block><block s="reportListItem"><l>4</l><block var="board"/></block><block s="reportListItem"><l>7</l><block var="board"/></block></list></block><block s="reportNewList"><list><block s="reportListItem"><l>2</l><block var="board"/></block><block s="reportListItem"><l>5</l><block var="board"/></block><block s="reportListItem"><l>8</l><block var="board"/></block></list></block><block s="reportNewList"><list><block s="reportListItem"><l>3</l><block var="board"/></block><block s="reportListItem"><l>6</l><block var="board"/></block><block s="reportListItem"><l>9</l><block var="board"/></block></list></block><block s="reportNewList"><list><block s="reportListItem"><l>1</l><block var="board"/></block><block s="reportListItem"><l>5</l><block var="board"/></block><block s="reportListItem"><l>9</l><block var="board"/></block></list></block><block s="reportNewList"><list><block s="reportListItem"><l>3</l><block var="board"/></block><block s="reportListItem"><l>5</l><block var="board"/></block><block s="reportListItem"><l>7</l><block var="board"/></block></list></block></list></block></block></script></block-definition><block-definition s="won? %&apos;player&apos;" type="predicate" category="other"><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_Triples"></custom-block><block s="reportNewList"><list><block var="player"/><block var="player"/><block var="player"/></list></block></block></block></script></block-definition><block-definition s="isFull %&apos;board&apos;" type="predicate" category="other"><header></header><code></code><translations></translations><inputs><input type="%s" initial="1"></input></inputs><script><block s="doDeclareVariables"><list><l>result</l></list></block><block s="doSetVar"><l>result</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><block s="doFor"><l>i</l><l>1</l><l>9</l><script><block s="doIf"><block s="reportNot"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><block s="reportListItem"><block var="i"/><block var="board"/></block><l>X</l></list></block><block s="reportVariadicEquals"><list><block s="reportListItem"><block var="i"/><block var="board"/></block><l>O</l></list></block></list></block></block><script><block s="doSetVar"><l>result</l><block s="reportBoolean"><l><bool>false</bool></l></block></block></script><list></list></block></script></block><block s="doReport"><block var="result"/></block></script></block-definition></blocks><primitives></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="false" hyperops="true" codify="false" inheritance="true" sublistIDs="false" id="353"><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="354"></list></costumes><sounds><list struct="atomic" id="355"></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" costume="2" color="80,80,80,1" pen="tip" id="360"><costumes><list id="361"><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="362"></list></sounds><blocks></blocks><variables></variables><scripts><script x="561" y="110.33333333333337"><block s="receiveGo"></block><block s="doSetVar"><l>board</l><block s="reportNewList"><list></list></block></block><block s="doSwitchToCostume"><l>Empty </l></block><block s="doSetVar"><l>Xs_turn</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><custom-block s="createBoard"></custom-block></script><script x="54" y="56"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="doSetVar"><l>posNumber</l><block s="reportVariadicSum"><list><l>5</l><block s="reportQuotient"><block s="xPosition"></block><l>50</l></block><block s="reportVariadicProduct"><list><block s="reportQuotient"><block s="yPosition"></block><l>-50</l></block><l>3</l></list></block></list></block></block><block s="doIfElse"><block var="Xs_turn"/><script><block s="doSwitchToCostume"><l>X </l></block><block s="doReplaceInList"><block var="posNumber"/><block var="board"/><l>X</l></block></script><script><block s="doSwitchToCostume"><l>O </l></block><block s="doReplaceInList"><block var="posNumber"/><block var="board"/><l>O</l></block></script></block><block s="doSetVar"><l>Xs_turn</l><block s="reportNot"><block var="Xs_turn"/></block></block><block s="doIf"><block s="reportVariadicOr"><list><custom-block s="won? %s"><l>X</l></custom-block><custom-block s="won? %s"><l>O</l></custom-block><custom-block s="isFull %s"><block var="board"/></custom-block></list></block><script><block s="doBroadcast"><l>game_end</l><list></list></block></script><list></list></block></script><script x="489" y="288.8333333333335"><block s="receiveMessage"><l>game_end</l><list></list></block><block s="doIf"><custom-block s="won? %s"><l>X</l></custom-block><script><block s="doSayFor"><l>X wins!</l><l>2</l></block></script><list><custom-block s="won? %s"><l>O</l></custom-block><script><block s="doSayFor"><l>O wins!</l><l>2</l></block></script><block s="reportNot"><block s="reportVariadicOr"><list><custom-block s="won? %s"><l>X</l></custom-block><custom-block s="won? %s"><l>O</l></custom-block></list></block></block><script><block s="doSayFor"><l>The game is a draw</l><l>2</l></block></script></list></block></script><script x="41" y="404.8333333333335"><block s="doStopThis"><l><option>all</option></l></block></script></scripts></sprite><watcher var="board" style="normal" x="10" y="52.00000399999999" color="243,118,29" extX="80" extY="70"/><watcher var="Xs_turn" style="normal" x="8" y="8" color="243,118,29"/><watcher var="boardList" style="normal" x="8" y="28.000001999999995" color="243,118,29"/><watcher var="posNumber" style="normal" x="10" y="145.00000599999998" color="243,118,29"/></sprites></stage><variables><variable name="Xs_turn"><bool>false</bool></variable><variable name="boardList"><l>0</l></variable><variable name="board"><list struct="atomic" id="497">X,2,3,O,X,6,O,8,X</list></variable><variable name="posNumber"><l>9</l></variable></variables></scene></scenes></project><media name="TicTacToeChallenge" app="Snap! 10.3.6, 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>