<snapdata remixID="10728588"><project name="U3L3-TicTacToe" app="Snap! 6, https://snap.berkeley.edu" version="1"><notes></notes><thumbnail>data:image/png;base64,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</thumbnail><stage name="Stage" width="480" height="360" costume="0" color="255,255,255,1" tempo="60" threadsafe="false" penlog="false" volume="100" pan="0" lines="round" ternary="true" hyperops="true" codify="false" inheritance="false" sublistIDs="false" scheduled="false" id="1"><pentrails>data:image/png;base64,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="2"></list></costumes><sounds><list struct="atomic" id="3"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites><sprite name="Square" idx="1" x="50" y="-50" heading="90" scale="0.95" volume="100" pan="0" rotation="1" draggable="false" hidden="true" costume="1" color="80,80,80,1" pen="tip" id="8"><costumes><list id="9"><item><costume name="Empty" center-x="29" center-y="28" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADkAAAA5CAYAAACMGIOFAAAAAXNSR0IArs4c6QAAAShJREFUaEPtmyEOg0AQRT836A1ag24TBIakFWv2Fr0BFgc4LKdZs6ICgyCpx9AbcIRmG0LS0lbPbj4nmDf/v4xZIgAVgCOAE8L87tECeQZwCZMRt0/ISWuNNE0PPgP3fT8ZYxyC43iH1FpPbdsijmOvIcdxnPI8hzFmC1lVFcqy9DnEdfa6ruF4NkkS0rN8mSSd9KiyrCvryrrK2gCdpJOyGvl3GtaVdWVdZW2ATtJJWY3kCaGTdJJOytoAnaSTshrJO0kn6SSdlLUBOkknZTWSd5JO0kk6KWsDdJJOymok7ySdpJMhOKmUmpumQZIkO494NqMOwzAXRQFrrePYPM+elVLIssxryK7rZmutg/8K6XOAv2Z/JXldHqTvQyQE8HCQof4qsWb2BLkbqAIXp3YbAAAAAElFTkSuQmCC" id="10"/></item><item><costume name="X" center-x="29.5" center-y="29" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADkAAAA6CAYAAAAKjPErAAAAAXNSR0IArs4c6QAABHpJREFUaEPd219IU1EcB/CvJXOBoRS29VAqBK0nF0hgzDYJsiwY9JAP0R/oQV8qI0KjQqWH9KHSItCHQIse6iGQ0JAKZ4yQEtJe8iGihEonlQ+jphDEOeyOs+vu33POndcLY2z37+f8fufcy9lvBVibizfNSpH3AgAdAHwAggD8a8BMTBsBbACQBPBZQZYDiACoWANINeGLGrnN4/H8q62tXV9TU7O+sLAQHW+OusJ9dc8TTE5OIh6PI5kkAcwsK5A0kn6/H62trbjwfL8rgMpFBmaPYWZmhn4sKyv7Q94XFhYSmunqNmgwcRJTU1MUGI1GEYlEMDQ0hFgslh3JQCBAI6m0hlugLDAcDmO86C7GLv9EZ2fnSmQkEqkgrRCLxWgruCF1WWBVVRWmfQ8zXSyyfC43sr29HXU3NiO64dqqh+oBiVQTGfPcybSEGtrc3LxqRlsjoGkk7cRMRL1eL5qamtD78UxeR10zQEtIsnFT5T0MDAxgaWkJ+Yayja7ug+qWN5Wu7E7nd91HX19fXqFWgJYjqWDzCWWB5eXl+LrzmWGXsRzJfEJZoM/nQ1tbm6mnMdtIgnUyonaBttPV6T7KAxSCzBXR1L63hv3E7Aa8QGHILGj4ndnrN9yOdIf+/n6kUilY6YPctxC9K8v00fA7eF/v4XpgEAUUGkmRoy4LLCoqQktLC7rfHzeMvNYGXKOr1kF5Rl01kDwn8z4+SkHmGowaGxsx+OOibjRkAKWkq9bthT7kR6MY+ns9J1QWUDqSnOBG3TB6enowPz9Pcbmgrbsfobe3l46ipA+KSFG2JaWlK3uS24deoaurKyeUrOvu7sbc3JwUoCORVLBqaENDA50NHBkZkQp0FElOpoay0SYD0+PfV2zfJvR2dCRd2Qu4Wf+Cpmcikch8rTcgiVA7jrx18CXtn2sWyQ4y6gjJjKajkfR/OEAHGbIoA8/w8LDu7cVV6aqevlceCvRuLyKAjo2uWkCt24vo1JWermbnRmVGVCrSLFArouQXKXYm3276SkNaBWpBg8EgprY8sOuj+0lB2gWykqr5E5ienqZf8UKFI8NLZzE+Pk4vzmj63ig8oqBCkVan742QtKEERFQYUgZQaQReqBCkiLlRo6jyQLmRTgB5I8qFdBLIA7WNzAfQLtQW8tTWmxgcHKTn5Jm+N+qHeuut9FHLSJHT9zxIK7cXS0gWWFJSQn8EvTx2mPdaufY3E1HTSJmTv1xK1QNDIBDAzPYnWYc0hVzNwFyDEVsmp1t2plRkuQGoQOsLLmF0dJR+VKAksmR2cEUBIamtI8VIExMTmR9BZUzf86Zprv3V1WOhUIjOK8Xj8ewqyVAoVFFaWkoLYxcXF6VN38tAkmOy0OLiYnqaZDKZjfR4PNvJiuXl5XVuiaC6wVhoet2sUtRbma5Bp0iyVFdX08JY0iJuKdHu2PuUpigpZVVqdgGkFGRNGumRlUp5PO53gjwNIADgSPr9GwBS5/wrjxcm4tSbAJAX/csE+asEWcgXO9K4TyLOslqO8R9ZYE5KKgBIogAAAABJRU5ErkJggg==" id="11"/></item><item><costume name="O" center-x="28.5" center-y="27.5" image="data:image/png;base64,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" id="12"/></item></list></costumes><sounds><list struct="atomic" id="13"></list></sounds><blocks></blocks><variables><variable name="position number"><l>10</l></variable></variables><scripts><script x="18" y="10"><block s="receiveGo"></block><block s="clear"></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="reportNumbers"><l>1</l><l>9</l></block></block><block s="doSetVar"><l>playing</l><block s="reportBoolean"><l><bool>true</bool></l></block></block></script><script x="18" y="175.66666666666734"><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><block s="reportListItem"><l></l><block var="board"/></block></autolambda><list></list></block><list><block s="reportNewList"><list><l>1</l><l>2</l><l>3</l></list></block></list></custom-block></script><script x="18" y="219.50000000000037"><custom-block s="possible winning triples"></custom-block></script><script x="18" y="249.33333333333294"><custom-block s="status of triple %l"><l/></custom-block></script><script x="18" y="279.3333333333329"><block s="reportEquals"><custom-block s="status of triple %l"><block s="reportNewList"><list><l>1</l><l>2</l><l>3</l></list></block></custom-block><block s="reportNewList"><list><l>X</l><l>X</l><l>X</l></list></block></block></script><script x="18" y="320.3333333333328"><custom-block s="status of all winning triples"></custom-block></script><script x="18" y="350.1666666666663"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="doIf"><block s="reportAnd"><block var="playing"/><block s="reportEquals"><block s="getCostumeIdx"></block><l>1</l></block></block><script><block s="doIfElse"><block var="X&apos;s turn?"/><script><block s="doSwitchToCostume"><l>X</l></block><block s="doReplaceInList"><block var="position number"/><block var="board"/><l>X</l></block><block s="doIf"><custom-block s="won? %s"><l>X</l></custom-block><script><block s="doTellTo"><l>Sprite</l><block s="reifyScript"><script><custom-block s="draw win line"></custom-block></script><list></list></block><list></list></block><block s="doSetVar"><l>playing</l><block s="reportBoolean"><l><bool>false</bool></l></block></block><block s="doBroadcast"><l>x win</l></block></script></block></script><script><block s="doSwitchToCostume"><l>O</l></block><block s="doReplaceInList"><block var="position number"/><block var="board"/><l>O</l></block><block s="doIf"><custom-block s="won? %s"><l>O</l></custom-block><script><block s="doTellTo"><l>Sprite</l><block s="reifyScript"><script><custom-block s="draw win line"></custom-block></script><list></list></block><list></list></block><block s="doSetVar"><l>playing</l><block s="reportBoolean"><l><bool>false</bool></l></block></block><block s="doBroadcast"><l>o win</l></block></script></block></script></block><block s="doSetVar"><l>X&apos;s turn?</l><block s="reportNot"><block var="X&apos;s turn?"/></block></block><block s="doIf"><block s="reportAnd"><block var="playing"/><custom-block s="tied?"></custom-block></block><script><block s="doBroadcast"><l>tie</l></block></script></block><block s="doDeclareVariables"><list><l>available squares</l></list></block><block s="doSetVar"><l>available squares</l><block s="reportKeep"><block s="reifyPredicate"><autolambda><block s="reportIsA"><l></l><l><option>number</option></l></block></autolambda><list></list></block><block var="board"/></block></block><block s="doIf"><block s="reportAnd"><block var="playing"/><block s="reportEquals"><block s="reportListAttribute"><l><option>length</option></l><block var="available squares"/></block><l>1</l></block></block><script><block s="doReplaceInList"><block s="reportListItem"><l>1</l><block var="available squares"/></block><block var="board"/><l>X</l></block><block s="doIf"><block s="reportNot"><custom-block s="won? %s"><l>X</l></custom-block></block><script><block s="doBroadcast"><l>tie</l></block><block s="doSetVar"><l>playing</l><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block></script></block></script></block></script><script x="18" y="1143.3333333333362"><custom-block s="won? %s"><l></l></custom-block></script><script x="18" y="1176.3333333333362"><custom-block s="tied?"></custom-block></script><script x="18" y="1206.1666666666695"><block s="receiveMessage"><l>o win</l></block><block s="hide"></block><block s="clear"></block></script><script x="18" y="1293.8333333333355"><block s="receiveMessage"><l>x win</l></block><block s="hide"></block><block s="clear"></block></script><script x="18" y="1381.500000000002"><block s="doSetVar"><l>win lines</l><block s="reportNewList"><list><block s="reportNewList"><list><block s="reportNewList"><list><l>-100</l><l>50</l></list></block><block s="reportNewList"><list><l>100</l><l>50</l></list></block></list></block><block s="reportNewList"><list><block s="reportNewList"><list><l>-100</l><l>0</l></list></block><block s="reportNewList"><list><l>100</l><l>0</l></list></block></list></block><block s="reportNewList"><list><block s="reportNewList"><list><l>-100</l><l>-50</l></list></block><block s="reportNewList"><list><l>100</l><l>-50</l></list></block></list></block><block s="reportNewList"><list><block s="reportNewList"><list><l>-50</l><l>100</l></list></block><block s="reportNewList"><list><l>-50</l><l>-100</l></list></block></list></block><block s="reportNewList"><list><block s="reportNewList"><list><l>0</l><l>100</l></list></block><block s="reportNewList"><list><l>0</l><l>-100</l></list></block></list></block><block s="reportNewList"><list><block s="reportNewList"><list><l>50</l><l>100</l></list></block><block s="reportNewList"><list><l>50</l><l>-100</l></list></block></list></block><block s="reportNewList"><list><block s="reportNewList"><list><l>-100</l><l>100</l></list></block><block s="reportNewList"><list><l>100</l><l>-100</l></list></block></list></block><block s="reportNewList"><list><block s="reportNewList"><list><l>-100</l><l>-100</l></list></block><block s="reportNewList"><list><l>100</l><l>100</l></list></block></list></block></list></block></block></script><script x="18" y="1586.4999999999966"><custom-block s="draw win line"></custom-block></script><script x="18" y="1622.3333333333296"><custom-block s="makeBoard"></custom-block></script><script x="208" y="1195.1666666666629"><block s="receiveMessage"><l>tie</l></block><block s="hide"></block><block s="clear"></block></script></scripts></sprite><watcher scope="Square" var="position number" style="normal" x="10" y="298.500002" color="243,118,29" hidden="true"/><watcher var="playing" style="normal" x="10" y="325.499996" color="243,118,29" hidden="true"/><watcher var="win lines" style="normal" x="10" y="329.999998" color="243,118,29" hidden="true"/><sprite name="Sprite(2)" idx="3" x="0" y="0" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="1" color="0,198.9,19.88999999999993,1" pen="tip" id="377"><costumes><list id="378"><item><costume name="monkey1 a" center-x="41" center-y="64" image="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c29kaXBvZGk9Imh0dHA6Ly9zb2RpcG9kaS5zb3VyY2Vmb3JnZS5uZXQvRFREL3NvZGlwb2RpLTAuZHRkIgogICB4bWxuczppbmtzY2FwZT0iaHR0cDovL3d3dy5pbmtzY2FwZS5vcmcvbmFtZXNwYWNlcy9pbmtzY2FwZSIKICAgdmVyc2lvbj0iMS4xIgogICB3aWR0aD0iODIuMjYxMDI0IgogICBoZWlnaHQ9IjEyNy44OTE5MiIKICAgdmlld0JveD0iOSAyMiA4Mi4yNjEwMjQgMTI3Ljg5MTkyIgogICBpZD0ic3ZnOTU0IgogICBzb2RpcG9kaTpkb2NuYW1lPSJtb25rZXkxLWEuc3ZnIgogICBpbmtzY2FwZTp2ZXJzaW9uPSIwLjkyLjIgNWMzZTgwZCwgMjAxNy0wOC0wNiI+CiAgPG1ldGFkYXRhCiAgICAgaWQ9Im1ldGFkYXRhOTYwIj4KICAgIDxyZGY6UkRGPgogICAgICA8Y2M6V29yawogICAgICAgICByZGY6YWJvdXQ9IiI+CiAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9zdmcreG1sPC9kYzpmb3JtYXQ+CiAgICAgICAgPGRjOnR5cGUKICAgICAgICAgICByZGY6cmVzb3VyY2U9Imh0dHA6Ly9wdXJsLm9yZy9kYy9kY21pdHlwZS9TdGlsbEltYWdlIiAvPgogICAgICAgIDxkYzp0aXRsZT48L2RjOnRpdGxlPgogICAgICA8L2NjOldvcms+CiAgICA8L3JkZjpSREY+CiAgPC9tZXRhZGF0YT4KICA8ZGVmcwogICAgIGlkPSJkZWZzOTU4IiAvPgogIDxzb2RpcG9kaTpuYW1lZHZpZXcKICAgICBwYWdlY29sb3I9IiNmZmZmZmYiCiAgICAgYm9yZGVyY29sb3I9IiM2NjY2NjYiCiAgICAgYm9yZGVyb3BhY2l0eT0iMSIKICAgICBvYmplY3R0b2xlcmFuY2U9IjEwIgogICAgIGdyaWR0b2xlcmFuY2U9IjEwIgogICAgIGd1aWRldG9sZXJhbmNlPSIxMCIKICAgICBpbmtzY2FwZTpwYWdlb3BhY2l0eT0iMCIKICAgICBpbmtzY2FwZTpwYWdlc2hhZG93PSIyIgogICAgIGlua3NjYXBlOndpbmRvdy13aWR0aD0iNjQwIgogICAgIGlua3NjYXBlOndpbmRvdy1oZWlnaHQ9IjQ4MCIKICAgICBpZD0ibmFtZWR2aWV3OTU2IgogICAgIHNob3dncmlkPSJmYWxzZSIKICAgICBmaXQtbWFyZ2luLXRvcD0iMCIKICAgICBmaXQtbWFyZ2luLWxlZnQ9IjAiCiAgICAgZml0LW1hcmdpbi1yaWdodD0iMCIKICAgICBmaXQtbWFyZ2luLWJvdHRvbT0iMCIKICAgICBpbmtzY2FwZTp6b29tPSIxLjE4MDcyMjkiCiAgICAgaW5rc2NhcGU6Y3g9IjE0Ni4wMTUzNiIKICAgICBpbmtzY2FwZTpjeT0iLTE5LjQ3NDQ2MiIKICAgICBpbmtzY2FwZTp3aW5kb3cteD0iLTIiCiAgICAgaW5rc2NhcGU6d2luZG93LXk9Ii0yIgogICAgIGlua3NjYXBlOndpbmRvdy1tYXhpbWl6ZWQ9IjAiCiAgICAgaW5rc2NhcGU6Y3VycmVudC1sYXllcj0ic3ZnOTU0IiAvPgogIDwhLS0gRXhwb3J0ZWQgYnkgU2NyYXRjaCAtIGh0dHA6Ly9zY3JhdGNoLm1pdC5lZHUvIC0tPgogIDxnCiAgICAgaWQ9IklEMC44NjY1MjE2MDY2ODc0NTY0IgogICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xODYuOTg0NjQsLTExMi4xMzM2MSkiPgogICAgPGcKICAgICAgIGlkPSJSX0FybSIKICAgICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE5NiwxMzUpIj4KICAgICAgPHBhdGgKICAgICAgICAgaWQ9IkFybV8xXyIKICAgICAgICAgZD0ibSAyOTEuMjAyLDQxNy44NDggYyAzLjA2NywwLjUwNiAxNC42OTEsMi41MiAxOS4zNzMsOS4wNjQgNS45MTIsOC4yNjggNy45MTYsMTQuNzI3IDcuOTE4LDE0Ljc5OSAwLjE3NCw1LjQ4NiA5LjkyLDguMzIgOS45MiwtMS4yNDYgdiAwIGMgLTAuMDQ5LC0wLjQxNiAtMS4zNCwtMTAuMjczIC0xMC40MzksLTIwLjI4MSAtMTAuMzU3LC0xMS4zODcgLTI1Ljc2NCwtMTIuNzU2IC0zMC4yNDQsLTEyLjQyNCAwLDAgLTMuMDcyLDAuNDMgLTIuNzMxLDMuOTMyIDAuMzM1LDMuNDk5IDYuMjAzLDYuMTU2IDYuMjAzLDYuMTU2IHYgMCAwIDAgMCAwIDAgMCAwIDAgMCB6IgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjQ4NjQ1NTc0LDAsMCwwLjQ4NjQ1NTc0LC04My4xLC0xMjkuODUpIgogICAgICAgICBpbmtzY2FwZTpjb25uZWN0b3ItY3VydmF0dXJlPSIwIgogICAgICAgICBzdHlsZT0iZmlsbDojNTk0YTQyO3N0cm9rZTojMDAwMDAwO3N0cm9rZS13aWR0aDoyIiAvPgogICAgICA8cGF0aAogICAgICAgICBpZD0iSGFuZF8xXyIKICAgICAgICAgZD0ibSAzMTYuMDQzLDQ0NS43MzIgYyAwLDAgLTMuMjcxLDEwLjk1MSAwLjczOCwxMS45MTggNC4wMDgsMC45NjkgNC4yMTcsLTUuNTMxIDQuMjE3LC01LjUzMSAwLDAgNy40NDEsMTMuMTA5IDE1LjI1Miw2Ljc4OSA3LjgxMSwtNi4zMTggLTQuMTQxLC0xNy42OTUgLTQuMTQxLC0xNy42OTUgMCwwIC0zLjg4MSwtMi40ODggLTguNDcxLC0xLjU2MiAtNC41ODMsMC45MjMgLTcuNTk1LDYuMDgxIC03LjU5NSw2LjA4MSB2IDAgMCAwIDAgMCAwIDAgMCAwIDAgeiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC40ODY0NTU3NCwwLDAsMC40ODY0NTU3NCwtODMuMSwtMTI5Ljg1KSIKICAgICAgICAgaW5rc2NhcGU6Y29ubmVjdG9yLWN1cnZhdHVyZT0iMCIKICAgICAgICAgc3R5bGU9ImZpbGw6IzliODU3OTtzdHJva2U6IzAwMDAwMDtzdHJva2Utd2lkdGg6MiIgLz4KICAgIDwvZz4KICAgIDxnCiAgICAgICBpZD0iTF9Bcm0iCiAgICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxOTYsMTM1KSI+CiAgICAgIDxwYXRoCiAgICAgICAgIGlkPSJBcm0iCiAgICAgICAgIGQ9Im0gMjYyLjkzLDQxMi4zNDQgYyAtMC4wNzgsLTMuNTE4IC0zLjE4LC0zLjU3OCAtMy4xOCwtMy41NzggLTQuNDg3LDAuMjAzIC0xOS42MjIsMy4zOTMgLTI4LjU1MSwxNS45MyAtNy44NDUsMTEuMDIgLTcuOTU1LDIwLjk1OSAtNy45NTQsMjEuMzc5IHYgMCBjIDEuMTM4LDkuNDk4IDEwLjQ3Nyw1LjUyNyA5Ljk5OCwwLjA1OSAtMC4wMDYsLTAuMDcyIDEuMjE0LC02LjcyNSA2LjEwMywtMTUuNjM3IDMuODY5LC03LjA1MyAxNS4xNzEsLTEwLjQzNiAxOC4xNTcsLTExLjMwMyAtMTBlLTQsLTAuMDAxIDUuNTA5LC0zLjMzNyA1LjQyNywtNi44NSB2IDAgMCAwIDAgMCAwIDAgMCAwIDAgeiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC40ODY0NTU3NCwwLDAsMC40ODY0NTU3NCwtODMuMSwtMTI5Ljg1KSIKICAgICAgICAgaW5rc2NhcGU6Y29ubmVjdG9yLWN1cnZhdHVyZT0iMCIKICAgICAgICAgc3R5bGU9ImZpbGw6IzU5NGE0MjtzdHJva2U6IzAwMDAwMDtzdHJva2Utd2lkdGg6MiIgLz4KICAgICAgPHBhdGgKICAgICAgICAgaWQ9IkhhbmQiCiAgICAgICAgIGQ9Im0gMjI3Ljg4Nyw0NDQuNjk3IGMgLTQuNjY3LC0wLjM3MyAtOC4yMjQsMi41NTkgLTguMjI0LDIuNTU5IDAsMCAtMTAuNTE0LDEyLjcxOSAtMi4wMDcsMTguMDYyIDguNTA3LDUuMzQ4IDE0LjMzNiwtOC41NTUgMTQuMzM2LC04LjU1NSAwLDAgMC45NzksNi40MyA0Ljg0NSw0Ljk5MiAzLjg2NiwtMS40MzggLTAuNjg0LC0xMS45MjIgLTAuNjg0LC0xMS45MjIgMCwwIC0zLjYwNCwtNC43NjMgLTguMjY2LC01LjEzNiB2IDAgMCAwIDAgMCAwIDAgMCAwIDAgeiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC40ODY0NTU3NCwwLDAsMC40ODY0NTU3NCwtODMuMSwtMTI5Ljg1KSIKICAgICAgICAgaW5rc2NhcGU6Y29ubmVjdG9yLWN1cnZhdHVyZT0iMCIKICAgICAgICAgc3R5bGU9ImZpbGw6IzliODU3OTtzdHJva2U6IzAwMDAwMDtzdHJva2Utd2lkdGg6MiIgLz4KICAgIDwvZz4KICAgIDxwYXRoCiAgICAgICBpZD0iVGFpbCIKICAgICAgIGQ9Im0gMjQ4LjE4LDQ5NS41MDIgYyAtOC4zNzcsMi44ODcgLTE4LjY4Niw0LjQyMiAtMzEuMjMxLDMuMjQ0IC0yOC40ODUsLTIuNjcyIC00MS44NjksLTI2LjI4NSAtNDQuOTY2LC0zOC4zOTggLTAuODIxLC0zLjIxMSAxLjExNiwtNi40ODIgNC4zMjYsLTcuMzAxIDMuMjExLC0wLjgxOCA2LjQ3OSwxLjExNyA3LjI5OSw0LjMyOCAwLjI4NCwxLjA3NiA3LjM4OSwyNi44ODUgMzQuNDYyLDI5LjQyNiAzNy40MjIsMy41MTIgNTAuMTgxLC0yMS40NTMgNTAuNzA3LC0yMi41MTggMS40NiwtMi45NTkgNS4wNDMsLTQuMjAzIDguMDExLC0yLjc2IDIuOTY5LDEuNDQxIDQuMjI0LDQuOTk0IDIuNzk4LDcuOTcxIC0wLjQ4LDAuOTk4IC05LjA1OCwxOC4zMDkgLTMxLjQwNiwyNi4wMDggdiAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgeiIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuNDg2NDU1NzQsMCwwLDAuNDg2NDU1NzQsMTEyLjksNS4xNSkiCiAgICAgICBpbmtzY2FwZTpjb25uZWN0b3ItY3VydmF0dXJlPSIwIgogICAgICAgc3R5bGU9ImZpbGw6IzU5NGE0MjtzdHJva2U6IzAwMDAwMDtzdHJva2Utd2lkdGg6MiIgLz4KICAgIDxnCiAgICAgICBpZD0iTF9MZWciCiAgICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxOTYsMTM1KSI+CiAgICAgIDxwYXRoCiAgICAgICAgIGlkPSJMZWdfMV8iCiAgICAgICAgIGQ9Im0gMjU0Ljk0OCw1MTguMzY1IGMgLTMuMTA0LC0xLjg5OCAtNS4zLC02LjY5OSAtNi4zNTQsLTEwLjY2OCAtMS42MDQsLTYuMDQzIC0yLjY1NiwtMTAuMzExIC0xLC0yMS4xNTQgMC45NTcsLTYuMjYgNS40MjIsLTE0LjkwOCA1LjQyMiwtMTQuOTA4IDAsMCAzLjI0NCwtNy4yNyA4LjU4NCwtNC40MzggMi44MzIsMS41MTggMCw5Ljg1OSAwLDkuODU5IDAsMCAtMi4yNDMsNi45NDMgLTIuODYxLDE4LjA3IC0wLjQ1LDguMTMzIDQuNDE4LDE5IDMuMTg4LDIzLjQwNCAtMC40NjIsMS42NTYgLTMuODcyLDEuNzM2IC02Ljk3OSwtMC4xNjUgdiAwIDAgMCAwIDAgMCAwIDAgMCAwIHoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuNDg2NDU1NzQsMCwwLDAuNDg2NDU1NzQsLTgzLjEsLTEyOS44NSkiCiAgICAgICAgIGlua3NjYXBlOmNvbm5lY3Rvci1jdXJ2YXR1cmU9IjAiCiAgICAgICAgIHN0eWxlPSJmaWxsOiM1OTRhNDI7c3Ryb2tlOiMwMDAwMDA7c3Ryb2tlLXdpZHRoOjIiIC8+CiAgICAgIDxwYXRoCiAgICAgICAgIGlkPSJGb290XzFfIgogICAgICAgICBkPSJtIDI2My40MDgsNTIwLjg4MSBjIDAsMCAtMy4wMSwtMTkuNTc4IC0yNC45OTcsLTE4LjY3NiAtMjEuOTg4LDAuOTA0IC0yMS4xOSwxMy44MzYgLTIwLjkzNSwxNy4xNjggMC42MDQsNy44MyAxMS4xNDYsNy42ODIgMTEuMTQ2LDcuNjgyIGwgMzQuOTM4LC0zLjYxMyAtMC4xNTIsLTIuNTYxIHYgMCAwIDAgMCAwIDAgMCAwIDAgMCB6IgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjQ4NjQ1NTc0LDAsMCwwLjQ4NjQ1NTc0LC04My4xLC0xMjkuODUpIgogICAgICAgICBpbmtzY2FwZTpjb25uZWN0b3ItY3VydmF0dXJlPSIwIgogICAgICAgICBzdHlsZT0iZmlsbDojYzJiNTliO3N0cm9rZTojMDAwMDAwO3N0cm9rZS13aWR0aDoyO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZCIgLz4KICAgIDwvZz4KICAgIDxnCiAgICAgICBpZD0iUl9MZWciCiAgICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxOTYsMTM1KSI+CiAgICAgIDxwYXRoCiAgICAgICAgIGlkPSJMZWciCiAgICAgICAgIGQ9Im0gMjkyLjgzMyw1MTguNTMxIGMgLTEuMjI5LC00LjQwNCAzLjYzOSwtMTUuMjcxIDMuMTg4LC0yMy40MDQgLTAuNjE4LC0xMS4xMjcgLTIuODYxLC0xOC4wNyAtMi44NjEsLTE4LjA3IDAsMCAtMi44MzIsLTguMzQyIDAsLTkuODU5IDUuMzQsLTIuODMyIDguNTg0LDQuNDM4IDguNTg0LDQuNDM4IDAsMCA0LjQ2NSw4LjY0OCA1LjQyMSwxNC45MDggMS42NTYsMTAuODQ0IDAuNjA1LDE1LjExMSAtMSwyMS4xNTQgLTEuMDU0LDMuOTY5IC0zLjI1LDguNzcgLTYuMzU0LDEwLjY2OCAtMy4xMDUsMS45IC02LjUxNiwxLjgyIC02Ljk3OCwwLjE2NSB2IDAgMCAwIDAgMCAwIDAgMCAwIDAgeiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC40ODY0NTU3NCwwLDAsMC40ODY0NTU3NCwtODMuMSwtMTI5Ljg1KSIKICAgICAgICAgaW5rc2NhcGU6Y29ubmVjdG9yLWN1cnZhdHVyZT0iMCIKICAgICAgICAgc3R5bGU9ImZpbGw6IzU5NGE0MjtzdHJva2U6IzAwMDAwMDtzdHJva2Utd2lkdGg6MiIgLz4KICAgICAgPHBhdGgKICAgICAgICAgaWQ9IkZvb3QiCiAgICAgICAgIGQ9Im0gMjkxLjIwMiw1MjMuNDQxIDM0LjkzNywzLjYxMyBjIDAsMCAxMC41NDEsMC4xNDggMTEuMTQ2LC03LjY4MiAwLjI1NiwtMy4zMzIgMS4wNTMsLTE2LjI2NCAtMjAuOTM2LC0xNy4xNjggLTIxLjk4NywtMC45MDIgLTI0Ljk5NywxOC42NzYgLTI0Ljk5NywxOC42NzYgbCAtMC4xNSwyLjU2MSB2IDAgMCAwIDAgMCAwIDAgMCAwIDAgeiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC40ODY0NTU3NCwwLDAsMC40ODY0NTU3NCwtODMuMSwtMTI5Ljg1KSIKICAgICAgICAgaW5rc2NhcGU6Y29ubmVjdG9yLWN1cnZhdHVyZT0iMCIKICAgICAgICAgc3R5bGU9ImZpbGw6I2MyYjU5YjtzdHJva2U6IzAwMDAwMDtzdHJva2Utd2lkdGg6MjtzdHJva2UtbGluZWNhcDpyb3VuZDtzdHJva2UtbGluZWpvaW46cm91bmQiIC8+CiAgICA8L2c+CiAgICA8ZwogICAgICAgaWQ9IkJvZHlfMV8iCiAgICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxOTYsMTM1KSI+CiAgICAgIDxwYXRoCiAgICAgICAgIGlkPSJCb2R5IgogICAgICAgICBkPSJtIDMwMy4wMzgsNDY5LjUxNCBjIDUuNDg2LC03LjU2OCA3LjEzNiwtMTguMjEzIDQuNDE3LC0yOC40NzMgLTIuMzAyLC04LjY4OCAtMS4zNjQsLTUuMzQgLTYuNzAzLC0xNy40MDQgLTEyLjEwNCwtMjcuMzUzIC0zNy4xOTQsLTMwLjYwNSAtNDYuOTY1LC0xMC41NTcgLTMuNzY2LDcuNzI3IC00LjU5NiwxMS40MyAtNC41OTMsMTEuNDczIGwgMC4wMTMsMC4xOTUgLTAuMDYzLDAuMTk1IGMgLTAuMDUzLDAuMTU4IC01LjI5MywxNS45MDIgLTMuNjE3LDI5LjYxOSAxLjU2MSwxMi43NzUgMTMuNzQxLDI1LjcwOSAzNC4wMDIsMjUuNzA5IDAuOTQyLDAgMS45MDgsLTAuMDI3IDIuODcsLTAuMDgyIDguODA3LC0wLjUwNSAxNS45NDIsLTQuMTk3IDIwLjYzOSwtMTAuNjc1IHYgMCAwIDAgMCAwIDAgMCAwIDAgMCB6IgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjQ4NjQ1NTc0LDAsMCwwLjQ4NjQ1NTc0LC04My4xLC0xMjkuODUpIgogICAgICAgICBpbmtzY2FwZTpjb25uZWN0b3ItY3VydmF0dXJlPSIwIgogICAgICAgICBzdHlsZT0iZmlsbDojNTk0YTQyO3N0cm9rZTojMDAwMDAwO3N0cm9rZS13aWR0aDoyIiAvPgogICAgICA8cGF0aAogICAgICAgICBpZD0iQmVsbHkiCiAgICAgICAgIGQ9Im0gMjU4LjU1MSw0NzQuMzExIGMgLTAuODgsLTIuMDM5IC00LjI1MSwtMTAuNjU2IC0zLjAyOSwtMjAuMzM4IDEuNDAxLC0xMS4wOTggOC40MDUsLTE5LjE4IDE5LjcxNiwtMjAuMjU2IDExLjMxMSwtMS4wNzYgMjAuOSw3LjIxOSAyNC4wMjQsMTguMzE0IDIuMTI5LDcuNTYxIDIuNDMyLDE3LjExNyAyLjQ3MywxOS4xOTcgbCAtMC4wMTMsMC4xOTUgYyAtNC40ODMsNC43OTcgLTEwLjg4NSw4LjAyOSAtMTkuMjY4LDguNTEyIC05LjYyNSwwLjU1MyAtMTcuNjM3LC0xLjYzMSAtMjMuNzg5LC01LjQxNiBsIC0wLjExNCwtMC4yMDggdiAwIDAgMCAwIDAgMCAwIDAgMCAwIHoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuNDg2NDU1NzQsMCwwLDAuNDg2NDU1NzQsLTgzLjEsLTEyOS44NSkiCiAgICAgICAgIGlua3NjYXBlOmNvbm5lY3Rvci1jdXJ2YXR1cmU9IjAiCiAgICAgICAgIHN0eWxlPSJmaWxsOiNjMmI1OWI7c3Ryb2tlOiMwMDAwMDA7c3Ryb2tlLXdpZHRoOjIiIC8+CiAgICA8L2c+CiAgICA8ZwogICAgICAgaWQ9IlJfRWFyIgogICAgICAgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTk2LDEzNSkiPgogICAgICA8cGF0aAogICAgICAgICBpZD0iRWFyXzFfIgogICAgICAgICBkPSJtIDMyMC4yMDUsMzQ4LjkwNyBjIDAsMCA1Ljc3LC0wLjM3NyAxMC4wNTEsLTMuMjM0IDYuMzc3LC00LjI1NyA3LjY4LC0xMy45MDUgMS42NTYsLTIzLjI3NSAtNi4wMjMsLTkuMzY5IC0xMS4xMzcsLTkuNjcgLTE1LjcyNywtNy40MSAtMy4yNTgsMS42MDQgLTQuMDIzLDUuODI5IC00LjE1Niw2Ljc2MyBsIC0wLjAyNywwLjEwOCBjIDUuMzg3LDEzLjQzNCA2LjExMywyNS4zOTEgNi4xMTMsMjUuMzkxIDAsMCAxLjUyMiwwLjcxIDIuMDksMS42NTcgdiAwIDAgMCAwIDAgMCAwIDAgMCAwIHoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuNDg2NDU1NzQsMCwwLDAuNDg2NDU1NzQsLTgzLjEsLTEyOS44NSkiCiAgICAgICAgIGlua3NjYXBlOmNvbm5lY3Rvci1jdXJ2YXR1cmU9IjAiCiAgICAgICAgIHN0eWxlPSJmaWxsOiM5Yjg1Nzk7c3Ryb2tlOiMwMDAwMDA7c3Ryb2tlLXdpZHRoOjIiIC8+CiAgICAgIDxwYXRoCiAgICAgICAgIGlkPSJJbm5lcl9FYXJfMV8iCiAgICAgICAgIGQ9Im0gMzI0LjM1NywzMjguOTE5IGMgMCwwIC0xLjU4LDQuNDU5IC04LjE4OCw2LjY3MSIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC40ODY0NTU3NCwwLDAsMC40ODY0NTU3NCwtODMuMSwtMTI5Ljg1KSIKICAgICAgICAgaW5rc2NhcGU6Y29ubmVjdG9yLWN1cnZhdHVyZT0iMCIKICAgICAgICAgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6IzAwMDAwMDtzdHJva2Utd2lkdGg6NDtzdHJva2UtbGluZWNhcDpyb3VuZCIgLz4KICAgIDwvZz4KICAgIDxnCiAgICAgICBpZD0iTF9FYXIiCiAgICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxOTYsMTM1KSI+CiAgICAgIDxwYXRoCiAgICAgICAgIGlkPSJFYXIiCiAgICAgICAgIGQ9Im0gMjExLjkxMiwzMzMuNjk4IGMgMCwwIC0wLjc4OCwtNS4wNDIgLTMuOTQsLTUuODMgLTMuMTUyLC0wLjc4OCAtMTAuNzE2LC0xLjI2IC0xNS40NDQsOC44MjUgLTQuNzI4LDEwLjA4NSAtMi4xNTcsMTkuNDc2IDQuNzI4LDIyLjg1MSAzLjc3LDEuODQ3IDguMzEyLDEuNjIzIDkuODU2LDEuNDc5IDAsMCAyLjY5MSwtMi44ODcgMy4zODYsLTMuNTAzIDAsLTEwZS00IC0wLjYyNywtMTAuMzA0IDEuNDY3LC0yMy4xNTEgbCAtMC4wNTMsLTAuNjcxIHYgMCAwIDAgMCAwIDAgMCAwIDAgMCB6IgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjQ4NjQ1NTc0LDAsMCwwLjQ4NjQ1NTc0LC04My4xLC0xMjkuODUpIgogICAgICAgICBpbmtzY2FwZTpjb25uZWN0b3ItY3VydmF0dXJlPSIwIgogICAgICAgICBzdHlsZT0iZmlsbDojOWI4NTc5O3N0cm9rZTojMDAwMDAwO3N0cm9rZS13aWR0aDoyIiAvPgogICAgICA8cGF0aAogICAgICAgICBpZD0iSW5uZXJfRWFyIgogICAgICAgICBkPSJtIDIwMS44NDIsMzQyLjU0IGMgMCwwIDIuMTU3LDQuMjEgOC45OTksNS41MjUiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuNDg2NDU1NzQsMCwwLDAuNDg2NDU1NzQsLTgzLjEsLTEyOS44NSkiCiAgICAgICAgIGlua3NjYXBlOmNvbm5lY3Rvci1jdXJ2YXR1cmU9IjAiCiAgICAgICAgIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlOiMwMDAwMDA7c3Ryb2tlLXdpZHRoOjQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kIiAvPgogICAgPC9nPgogICAgPHBhdGgKICAgICAgIGlkPSJIZWFkXzFfIgogICAgICAgZD0ibSAzMjAuMTQ1LDM0Ny43ODQgYyAtMy40NzMsLTIuMDA0IC02LjkwOCwtMy4xODcgLTkuMjU0LC0zLjgzOSBsIC0wLjAyLC0wLjEwMSBjIDAsMCAtMTAuMzUzLC00MS43MTkgLTMyLjcyOCwtNDEuNzE5IC0xMC44OTMsMCAtMTcsMTguNSAtMTcsMTguNSAwLDAgLTcuNjY3LC0xNy42NjcgLTI0LjA4MywtMTQuOTE3IC0xOC40NjcsMy4wOTQgLTIwLjM0LDQzLjU4MiAtMjAuNDY0LDQ2LjkzOCBsIDAuMDA2LDAuMjEzIGMgLTIuMDE2LDEuMTk3IC00LjQ5LDIuODgxIC02LjkxNCw1LjA3OCBsIC0wLjAwNSwtMC4yMzIgYyAtMC4xOTUsLTQuMDQ5IC0yLjIyNCwtNjAuNjE3IDM2LjU3NCwtNzAuODgzIGwgMC4wMjksLTAuMTE4IGMgLTAuMTA1LC0xLjI4IC0wLjE1LC0zLjk5NSAwLjY3LC04LjE0IDEuMTgsLTUuOTYxIDQuNzg4LC0xMC45MzggNC43ODgsLTEwLjkzOCAwLDAgMC45NSw1LjE0OSAzLjUyNSw4Ljg3NSAyLjY1LDMuODM0IDQuOTc1LDQuOTc1IDQuOTc1LDQuOTc1IDAsMCAtMC44MDcsLTIuOTc3IC0wLjY3NywtNS4zNDggMC4yNjUsLTQuODE0IDIuNTc2LC03LjIwMyAyLjU3NiwtNy4yMDMgMCwwIDIuODAyLDYuODUxIDYuMzAyLDEwLjgwMSAzLjc0Myw0LjIyNSA4LjI3Niw2Ljk4OCA4LjI3Niw2Ljk4OCBsIDAuMDY2LDAuMDE4IGMgNDAuMjUyLDEwLjAxIDQzLjMyOSw2MC41MTggNDMuMzI5LDYwLjUxOCBsIDAuMDI5LDAuNTM0IHYgMCAwIDAgMCAwIDAgMCAwIDAgMCB6IgogICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC40ODY0NTU3NCwwLDAsMC40ODY0NTU3NCwxMTIuOSw1LjE1KSIKICAgICAgIGlua3NjYXBlOmNvbm5lY3Rvci1jdXJ2YXR1cmU9IjAiCiAgICAgICBzdHlsZT0iZmlsbDojNzI2NjU4O3N0cm9rZTojMDAwMDAwO3N0cm9rZS13aWR0aDoyIiAvPgogICAgPHBhdGgKICAgICAgIGlkPSJGYWNlIgogICAgICAgZD0ibSAzMTAuODcxLDM0My44NDQgYyAwLDAgLTEwLjM1MywtNDEuNzE5IC0zMi43MjgsLTQxLjcxOSAtMTAuODkzLDAgLTE3LDE4LjUgLTE3LDE4LjUgMCwwIC03LjY2NywtMTcuNjY3IC0yNC4wODMsLTE0LjkxNyAtMTguNTI5LDMuMTA0IC0yMC4zNTIsNDMuODUxIC0yMC40NjUsNDYuOTcgbCAtMC4wNjMsMC4yMjMgYyAtNi41NCwzLjkgLTE0LjQ0OSwxMS42MSAtMTMuMjksMjYuNTk5IDEuNjI1LDIxIDI4LjYzMywzNi41NyA3MC4wNjIsMzIuMjUgNDQuMzM3LC00LjYyNSA2MS4wMjMsLTI1LjkwNiA1Ni4wMDEsLTQ4LjE4NyAtMi45MTQsLTEyLjkzIC0xMi40MjgsLTE3Ljk0IC0xOC4zNTQsLTE5LjU5OSBsIC0wLjA4LC0wLjEyIHYgMCAwIDAgMCAwIDAgMCAwIDAgMCB6IgogICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC40ODY0NTU3NCwwLDAsMC40ODY0NTU3NCwxMTIuOSw1LjE1KSIKICAgICAgIGlua3NjYXBlOmNvbm5lY3Rvci1jdXJ2YXR1cmU9IjAiCiAgICAgICBzdHlsZT0iZmlsbDojYzJiNTliO3N0cm9rZTojMDAwMDAwO3N0cm9rZS13aWR0aDoyIiAvPgogICAgPHBhdGgKICAgICAgIGlkPSJNb3V0aCIKICAgICAgIGQ9Im0gMjgzLjE2MiwzNzguMzg4IGMgLTAuNjEzLC0wLjkwNSAtMS44NTIsLTEuMTQgLTIuNzY2LC0wLjU0MiAtMC4wMzQsMC4wMjMgLTMuNTgzLDIuMjY3IC0xMy44MzQsMy4xMTIgLTEuNjA0LC01LjgwNiAtMC42MDEsLTkuNDg5IC0wLjU4MywtOS41NDkgMC4xNTQsLTAuNTI4IC0wLjE0NiwtMS4wODMgLTAuNjc1LC0xLjI0IC0wLjUzNCwtMC4xNTggLTEuMDg2LDAuMTQ1IC0xLjI0NCwwLjY3MyAtMC4wNTQsMC4xODEgLTEuMTU2LDQuMDc3IDAuNDY5LDEwLjI1OSAtOS42MTMsMC41NTEgLTEzLjUyMywtMC45NzEgLTEzLjYzLC0xLjAxNCAtMS4wMDUsLTAuNDMyIC0yLjE3NSwwLjAyMyAtMi42MiwxLjAyNyAtMC40NDcsMS4wMSAwLjAwOSwyLjE5MSAxLjAxOSwyLjYzOCAwLjQwNSwwLjE4IDMuNTk5LDEuNDc4IDExLjEyMywxLjQ3OCAxLjcyNCwwIDMuNjc2LC0wLjA2OCA1Ljg3MywtMC4yMzQgMTEuODMsLTAuODkgMTUuOTQxLC0zLjU1NSAxNi4zNzEsLTMuODU1IDAuODk1LC0wLjYyOCAxLjEwOSwtMS44NDkgMC40OTcsLTIuNzUzIHYgMCAwIDAgMCAwIDAgMCAwIDAgMCB6IgogICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC40ODY0NTA4NSwwLjAwMjE4NDQ0LC0wLjAwMjE4NDQ0LDAuNDg2NDUwODUsMTEzLjU1LDcpIgogICAgICAgaW5rc2NhcGU6Y29ubmVjdG9yLWN1cnZhdHVyZT0iMCIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0iTm9zZSIKICAgICAgIGQ9Im0gMjY0LjA4MiwzNTYuMDAxIGMgNC4xMjEsMCA3Ljg1NiwwLjg0NyAxMC41NiwyLjIxNiAyLjcwNCwxLjM2OSA0LjM3OCwzLjI2IDQuMzc4LDUuMzQ2IDAsMi4wODYgLTEuNjc0LDMuOTc3IC00LjM3OCw1LjM0NiAtMi43MDQsMS4zNjkgLTYuNDM5LDIuMjE2IC0xMC41NiwyLjIxNiAtNC4xMjEsMCAtNy44NTYsLTAuODQ3IC0xMC41NiwtMi4yMTYgLTIuNzA0LC0xLjM2OSAtNC4zNzgsLTMuMjYgLTQuMzc4LC01LjM0NiAwLC0yLjA4NiAxLjY3NCwtMy45NzcgNC4zNzgsLTUuMzQ2IDIuNzA0LC0xLjM2OSA2LjQzOSwtMi4yMTYgMTAuNTYsLTIuMjE2IHYgMCAwIDAgMCAwIDAgMCAwIDAgeiIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMzk5ODk0MTIsLTAuMDE0MjgxOTMsMC4wMTQyODE5MywwLjM5OTg5NDEyLDEzMC42LDQzLjk1KSIKICAgICAgIGlua3NjYXBlOmNvbm5lY3Rvci1jdXJ2YXR1cmU9IjAiCiAgICAgICBzdHlsZT0iZmlsbDojNzI2NjU4O3N0cm9rZTojMDAwMDAwO3N0cm9rZS13aWR0aDoyIiAvPgogICAgPGcKICAgICAgIGlkPSJMX0V5ZV8xXyIKICAgICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE5NiwxMzUpIj4KICAgICAgPHBhdGgKICAgICAgICAgaWQ9IldoaXRlIgogICAgICAgICBkPSJtIDI5Ny41NDIsMzUyLjE3MyBjIDAuMjU1LC02LjE5NiAwLjI4LC0yOC4zODggLTEyLjU0OCwtMjcuMDYxIC0xNC4yMywxLjQ3MiAtOC4yMDEsMjUuNjI1IC03LjYzMSwyNy43OTIgbCAwLjAxLDAuMTYgYyAyLjA3OSwtMC40MTYgNS4xODQsLTAuOTAzIDkuMDM0LC0xLjEwNiA1LjczNywtMC4zMDEgOS42NjEsMC4xMDUgMTEuMDkxLDAuMjk3IGwgMC4wNDQsLTAuMDgyIHYgMCAwIDAgMCAwIDAgMCAwIDAgMCB6IgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjQ4NjQ1NTc0LDAsMCwwLjQ4NjQ1NTc0LC04MS44NSwtMTI2LjEpIgogICAgICAgICBpbmtzY2FwZTpjb25uZWN0b3ItY3VydmF0dXJlPSIwIgogICAgICAgICBzdHlsZT0iZmlsbDojZjFmMmYyIiAvPgogICAgICA8cGF0aAogICAgICAgICBpZD0iUHVwaWwiCiAgICAgICAgIGQ9Im0gMjgzLjIwNSwzNTEuNTA1IGMgMCwwIC0zLjY4NCwtMTkuMjUgMi44NTIsLTE5LjI1IDYuNTMzLDAgNy4wMDksMTkuMjUgNy4wMDksMTkuMjUiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuNDg2NDU1NzQsMCwwLDAuNDg2NDU1NzQsLTgxLjg1LC0xMjYuMSkiCiAgICAgICAgIGlua3NjYXBlOmNvbm5lY3Rvci1jdXJ2YXR1cmU9IjAiCiAgICAgICAgIHN0eWxlPSJmaWxsOiM1OTRhNDI7c3Ryb2tlOiMwMDAwMDA7c3Ryb2tlLXdpZHRoOjIiIC8+CiAgICAgIDxwYXRoCiAgICAgICAgIGlkPSJPdXRsaW5lIgogICAgICAgICBkPSJtIDI5My4wMTQsMzI2LjAzNyBjIC0yLjIxMywtMi4xNjUgLTQuOTY0LC0zLjA5MiAtOC4xNzUsLTIuNzYzIC0zLjQxNiwwLjM1NCAtNi4wNzQsMS44OTEgLTcuOTAyLDQuNTcgLTQuNjc3LDYuODUzIC0yLjM3LDE5LjM1NiAtMS4zNjIsMjMuNzI5IC0wLjk0NywwLjIyMyAtMS40ODksMC4zODUgLTEuNTUzLDAuNDA0IGwgMC44NzcsMi44NjkgYyAwLjA0NSwtMC4wMTQgNC41MywtMS4zNjUgMTEuNTg3LC0xLjczNSA0LjMwOSwtMC4yMjggNy41NzYsLTAuMDQyIDkuNDc2LDAuMTM3IC0xMGUtNCwwLjAxOCAtMC4wMDMsMC4wNDEgLTAuMDAzLDAuMDQ0IGwgMS40MTEsMC4xMTQgYyAwLjI5OSwwLjA0MSAwLjQ1OCwwLjA2NyAwLjQ2NiwwLjA2OSBsIDAuMDA2LC0wLjAzMSAxLjEwNywwLjA4OSBjIDAuMDY2LC0wLjgyMSAxLjUzOSwtMjAuMTg4IC01LjkzNSwtMjcuNDk2IHYgMCAwIDAgMCAwIDAgMCAwIDAgMCB6IG0gMy4wNzEsMjQuMjA2IGMgLTIuMDM2LC0wLjE4NyAtNS4zNywtMC4zNjEgLTkuNzU4LC0wLjEyOSAtMy4xMzcsMC4xNjUgLTUuNzc4LDAuNTEzIC03LjgwNywwLjg2NCAtMC45MDIsLTMuOTMxIC0zLjEwNywtMTUuNTgxIDAuODk0LC0yMS40NDMgMS4zMjYsLTEuOTQzIDMuMjAxLC0zLjAxNSA1LjczMywtMy4yNzYgMi4zMTcsLTAuMjQ0IDQuMTk5LDAuMzg5IDUuNzY4LDEuOTIxIDQuODc0LDQuNzYzIDUuMjc1LDE2LjQ4MyA1LjE3LDIyLjA2MyB2IDAgMCAwIDAgMCAwIDAgMCAwIDAgeiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC40ODY0NTU3NCwwLDAsMC40ODY0NTU3NCwtODEuODUsLTEyNi4xKSIKICAgICAgICAgaW5rc2NhcGU6Y29ubmVjdG9yLWN1cnZhdHVyZT0iMCIgLz4KICAgIDwvZz4KICAgIDxnCiAgICAgICBpZD0iUl9FeWVfMV8iCiAgICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxOTYsMTM1KSI+CiAgICAgIDxwYXRoCiAgICAgICAgIGlkPSJXaGl0ZV8xXyIKICAgICAgICAgZD0ibSAyNTAuNjgsMzUyLjE3MyBjIDAuMjU1LC02LjE5NiAwLjI4LC0yOC4zODggLTEyLjU0OCwtMjcuMDYxIC0xNC4yMywxLjQ3MiAtOC4yMDEsMjUuNjI1IC03LjYzMSwyNy43OTIgbCAwLjAxLDAuMTYgYyAyLjA3OSwtMC40MTYgNS4xODQsLTAuOTAzIDkuMDM0LC0xLjEwNiA1LjczNywtMC4zMDEgOS42NjEsMC4xMDUgMTEuMDkxLDAuMjk3IGwgMC4wNDQsLTAuMDgyIHYgMCAwIDAgMCAwIDAgMCAwIDAgMCB6IgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjQ4NjQ1NTc0LDAsMCwwLjQ4NjQ1NTc0LC04NC4zLC0xMjQuNCkiCiAgICAgICAgIGlua3NjYXBlOmNvbm5lY3Rvci1jdXJ2YXR1cmU9IjAiCiAgICAgICAgIHN0eWxlPSJmaWxsOiNmMWYyZjIiIC8+CiAgICAgIDxwYXRoCiAgICAgICAgIGlkPSJQdXBpbF8xXyIKICAgICAgICAgZD0ibSAyMzYuMzQzLDM1MS41MDUgYyAwLDAgLTMuNjg0LC0xOS4yNSAyLjg1MiwtMTkuMjUgNi41MzMsMCA3LjAwOSwxOS4yNSA3LjAwOSwxOS4yNSIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC40ODY0NTU3NCwwLDAsMC40ODY0NTU3NCwtODQuMywtMTI0LjQpIgogICAgICAgICBpbmtzY2FwZTpjb25uZWN0b3ItY3VydmF0dXJlPSIwIgogICAgICAgICBzdHlsZT0iZmlsbDojNTk0YTQyO3N0cm9rZTojMDAwMDAwO3N0cm9rZS13aWR0aDoyIiAvPgogICAgICA8cGF0aAogICAgICAgICBpZD0iT3V0bGluZV8xXyIKICAgICAgICAgZD0ibSAyNDYuMTUzLDMyNi4wMzcgYyAtMi4yMTMsLTIuMTY1IC00Ljk2NCwtMy4wOTIgLTguMTc1LC0yLjc2MyAtMy40MTYsMC4zNTQgLTYuMDc0LDEuODkxIC03LjkwMiw0LjU3IC00LjY3Nyw2Ljg1MyAtMi4zNywxOS4zNTYgLTEuMzYyLDIzLjcyOSAtMC45NDcsMC4yMjMgLTEuNDg5LDAuMzg1IC0xLjU1MywwLjQwNCBsIDAuODc3LDIuODY5IGMgMC4wNDUsLTAuMDE0IDQuNTMsLTEuMzY1IDExLjU4NywtMS43MzUgNC4zMDksLTAuMjI4IDcuNTc2LC0wLjA0MiA5LjQ3NiwwLjEzNyAtMC4wMDEsMC4wMTggLTAuMDAzLDAuMDQxIC0wLjAwMywwLjA0NCBsIDEuNDExLDAuMTE0IGMgMC4yOTksMC4wNDEgMC40NTgsMC4wNjcgMC40NjYsMC4wNjkgbCAwLjAwNiwtMC4wMzEgMS4xMDcsMC4wODkgYyAwLjA2NiwtMC44MjEgMS41MzgsLTIwLjE4OCAtNS45MzUsLTI3LjQ5NiB2IDAgMCAwIDAgMCAwIDAgMCAwIDAgeiBtIDMuMDcxLDI0LjIwNiBjIC0yLjAzNiwtMC4xODcgLTUuMzcsLTAuMzYxIC05Ljc1OCwtMC4xMjkgLTMuMTM3LDAuMTY1IC01Ljc3OCwwLjUxMyAtNy44MDcsMC44NjQgLTAuOTAyLC0zLjkzMSAtMy4xMDcsLTE1LjU4MSAwLjg5NCwtMjEuNDQzIDEuMzI2LC0xLjk0MyAzLjIwMSwtMy4wMTUgNS43MzMsLTMuMjc2IDIuMzE3LC0wLjI0NCA0LjE5OSwwLjM4OSA1Ljc2OCwxLjkyMSA0Ljg3Myw0Ljc2MyA1LjI3NSwxNi40ODMgNS4xNywyMi4wNjMgdiAwIDAgMCAwIDAgMCAwIDAgMCAwIHoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuNDg2NDU1NzQsMCwwLDAuNDg2NDU1NzQsLTg0LjMsLTEyNC40KSIKICAgICAgICAgaW5rc2NhcGU6Y29ubmVjdG9yLWN1cnZhdHVyZT0iMCIgLz4KICAgIDwvZz4KICA8L2c+Cjwvc3ZnPgo=" id="379"/></item></list></costumes><sounds><list struct="atomic" id="380"></list></sounds><blocks></blocks><variables></variables><scripts><script x="226" y="13.000000000000028"><block s="receiveMessage"><l>x win</l></block><block s="show"></block><block s="doSayFor"><l>X is the winner! Must&apos;ve cheated somehow</l><l>2</l></block><block s="bubble"><l>haha loser</l></block><block s="doGlide"><l>2</l><l>500</l><l>0</l></block><block s="hide"></block></script><script x="15" y="12"><block s="receiveGo"></block><block s="hide"></block><block s="gotoXY"><l>0</l><l>0</l></block></script><script x="13" y="134.00000000000003"><block s="receiveMessage"><l>o win</l></block><block s="show"></block><block s="doSayFor"><l>O is the winner! Wouldn&apos;t want to be x rn...</l><l>2</l></block><block s="bubble"><l>hahahahahahahahaha</l></block><block s="doGlide"><l>2</l><l>-500</l><l>0</l></block><block s="hide"></block></script><script x="12" y="286.66666666666663"><block s="receiveMessage"><l>tie</l></block><block s="show"></block><block s="doSayFor"><l>wow you guys are so bad at tictactoe that you tied...</l><l>2</l></block><block s="bubble"><l>awkward</l></block><block s="doGlide"><l>2</l><l>500</l><l>0</l></block><block s="hide"></block></script></scripts></sprite><watcher var="board" style="normal" x="8" y="7" color="243,118,29" extX="80" extY="70"/><sprite name="Sprite" idx="2" x="100" y="50" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="1" color="19,81,255,1" pen="tip" id="429"><costumes><list id="430"><item><costume name="parrot2 a" center-x="53.5" center-y="78" image="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c29kaXBvZGk9Imh0dHA6Ly9zb2RpcG9kaS5zb3VyY2Vmb3JnZS5uZXQvRFREL3NvZGlwb2RpLTAuZHRkIgogICB4bWxuczppbmtzY2FwZT0iaHR0cDovL3d3dy5pbmtzY2FwZS5vcmcvbmFtZXNwYWNlcy9pbmtzY2FwZSIKICAgdmVyc2lvbj0iMS4xIgogICB3aWR0aD0iMTA3LjA1ODczIgogICBoZWlnaHQ9IjE1NS41MjQ0MSIKICAgdmlld0JveD0iLTEgLTEgMTA3LjA1ODczIDE1NS41MjQ0MSIKICAgaWQ9InN2Zzc4MTQiCiAgIHNvZGlwb2RpOmRvY25hbWU9InBhcnJvdDItYS5zdmciCiAgIGlua3NjYXBlOnZlcnNpb249IjAuOTIuMiA1YzNlODBkLCAyMDE3LTA4LTA2Ij4KICA8bWV0YWRhdGEKICAgICBpZD0ibWV0YWRhdGE3ODIwIj4KICAgIDxyZGY6UkRGPgogICAgICA8Y2M6V29yawogICAgICAgICByZGY6YWJvdXQ9IiI+CiAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9zdmcreG1sPC9kYzpmb3JtYXQ+CiAgICAgICAgPGRjOnR5cGUKICAgICAgICAgICByZGY6cmVzb3VyY2U9Imh0dHA6Ly9wdXJsLm9yZy9kYy9kY21pdHlwZS9TdGlsbEltYWdlIiAvPgogICAgICAgIDxkYzp0aXRsZT48L2RjOnRpdGxlPgogICAgICA8L2NjOldvcms+CiAgICA8L3JkZjpSREY+CiAgPC9tZXRhZGF0YT4KICA8ZGVmcwogICAgIGlkPSJkZWZzNzgxOCIgLz4KICA8c29kaXBvZGk6bmFtZWR2aWV3CiAgICAgcGFnZWNvbG9yPSIjZmZmZmZmIgogICAgIGJvcmRlcmNvbG9yPSIjNjY2NjY2IgogICAgIGJvcmRlcm9wYWNpdHk9IjEiCiAgICAgb2JqZWN0dG9sZXJhbmNlPSIxMCIKICAgICBncmlkdG9sZXJhbmNlPSIxMCIKICAgICBndWlkZXRvbGVyYW5jZT0iMTAiCiAgICAgaW5rc2NhcGU6cGFnZW9wYWNpdHk9IjAiCiAgICAgaW5rc2NhcGU6cGFnZXNoYWRvdz0iMiIKICAgICBpbmtzY2FwZTp3aW5kb3ctd2lkdGg9Ijg1MiIKICAgICBpbmtzY2FwZTp3aW5kb3ctaGVpZ2h0PSI0ODEiCiAgICAgaWQ9Im5hbWVkdmlldzc4MTYiCiAgICAgc2hvd2dyaWQ9ImZhbHNlIgogICAgIGlua3NjYXBlOnpvb209IjEiCiAgICAgaW5rc2NhcGU6Y3g9IjU1IgogICAgIGlua3NjYXBlOmN5PSIzNi43OTIxNTciCiAgICAgaW5rc2NhcGU6d2luZG93LXg9Ii00IgogICAgIGlua3NjYXBlOndpbmRvdy15PSItNCIKICAgICBpbmtzY2FwZTp3aW5kb3ctbWF4aW1pemVkPSIwIgogICAgIGlua3NjYXBlOmN1cnJlbnQtbGF5ZXI9InN2Zzc4MTQiCiAgICAgZml0LW1hcmdpbi10b3A9IjAiCiAgICAgZml0LW1hcmdpbi1sZWZ0PSIwIgogICAgIGZpdC1tYXJnaW4tcmlnaHQ9IjAiCiAgICAgZml0LW1hcmdpbi1ib3R0b209IjAiIC8+CiAgPCEtLSBFeHBvcnRlZCBieSBTY3JhdGNoIC0gaHR0cDovL3NjcmF0Y2gubWl0LmVkdS8gLS0+CiAgPGcKICAgICBpZD0iSUQwLjM4MjUxMjYwNTc0OTA3MDY0IgogICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuODA4NzcxMTksMCwwLDAuODA4NzcxMTksLTEuNDg1MTYwOSwxMi4wMzIzNzYpIj4KICAgIDxnCiAgICAgICBpZD0iQmFja19XaW5nIj4KICAgICAgPHBhdGgKICAgICAgICAgaWQ9Ik91dGVyXzFfIgogICAgICAgICBkPSJtIDEyNy45OSw5OC4wMTUgYyAtMC4wNCwtMTIuNTA3IDE0LjA5NiwtMzQuNzg3IDIzLjg0OSwtNDQuMTk4IDIuMjYyLC0yLjE4MSA0LjA0MiwtNy4wOTYgMy40MDksLTE2LjE5NiAtMC4yODMsLTQuMDQ5IC0xLjA5MiwtOC4yODggLTIuOTg1LC0xMi43OTYgMCwwIC0wLjgzNCwtNC4xMjcgLTUuNDA5LC0xMS41NDcgLTcuOTQ2LC0xMi44ODEgLTMzLjE4MSwtMjIuNTg1IC0yOS4xNTYsNC44NTMgMS4yMDQsOC4yMTUgNS41MDMsMTYuNjE0IDguMDYyLDIwLjA4MiAtMS42NDYsLTAuODA4IC05LjgxNywtNS40MjQgLTEzLjA3LC0xLjM2NSAtNC4xNjEsNS4xOTQgMTEuNjE2LDE3LjAwMSAxMS42MTYsMTcuMDAxIC00LjEyOSwtMS42MjcgLTkuNzA5LC0yLjczOCAtMTEuMzc4LDAuNTU1IC0yLjM0LDQuNjIzIDUuNzE3LDExLjU0MiA1LjcxNywxMS41NDIgLTIuNDA1LDAuMjA3IC02LjY2OCwwLjA3MSAtNy40NTQsMi40MSAtMC43ODYsMi4zMzkgMi42ODMsNy4yMzggNC4yNDQsOC41ODcgLTQuNDg1LDAuNTAyIC02LjczOSwyLjQ4OSAtNi43NjQsNC40NDcgLTAuMjE4LDIuMDgyIDIuODc0LDYuMjMxIDcuNjQzLDkuMjk1IC0yLjcxNSw1LjE2IDAuMjEzLDEwLjgyMyAyLjU4MywxMi4wMjkgMi4yNjksMS4xNTYgNC40NywwLjkzNyA2LjY0OSwtMC4zNTkgMS4wMjgsLTAuNjAyIDIuNDUzLC0xLjgzMSAyLjQ0NCwtNC4zNCB6IgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjczNTA5MTg3LDAsMCwwLjczNTA5MTg3LDAuNiwtMC4yNSkiCiAgICAgICAgIGlua3NjYXBlOmNvbm5lY3Rvci1jdXJ2YXR1cmU9IjAiCiAgICAgICAgIHN0eWxlPSJmaWxsOiMyNzlhZmEiIC8+CiAgICAgIDxwYXRoCiAgICAgICAgIGlkPSJJbm5lcl8yXyIKICAgICAgICAgZD0ibSAxMjcuOTksOTguMDE1IGMgLTAuMDQsLTEyLjUwNyAxNC4wOTYsLTM0Ljc4NyAyMy44NDksLTQ0LjE5OCAyLjI2MiwtMi4xODEgNC4wNDIsLTcuMDk2IDMuNDA5LC0xNi4xOTYgLTAuMjgzLC00LjA0OSAtMS4wOTIsLTguMjg4IC0yLjk4NSwtMTIuNzk2IC0yLjc2NSwtNi43MDQgLTE0LjI4MywtMTkuNTQ2IC0yMS44NjgsLTE3LjcwOCAtMTMuNTAzLDMuMjczIDUuMDIzLDM2Ljk0MSA1LjAyMywzNi45NDEgLTI2LjkwNiwtNy44MzggLTIuODg2LDEzLjYzNiAtMi44ODYsMTMuNjM2IC0yNC40MDgsLTQuNTQ0IC02LjQwMSwxMS4wMzkgLTYuNDAxLDExLjAzOSAtMTYuODM3LC0wLjQ1NSAtMy4zMSwxMS4xNjUgLTMuMzEsMTEuMTY1IC0xNC4yNzUsMC42MDggLTYuNTA3LDEwLjc4OCAtNi41MDcsMTAuNzg4IC0yLjcxNSw1LjE2IDAuMjEzLDEwLjgyMyAyLjU4MywxMi4wMjkgMi4yNjksMS4xNTYgNC40NywwLjkzNyA2LjY0OSwtMC4zNTkgMS4wMjgsLTAuNjAzIDIuNDUzLC0xLjgzMiAyLjQ0NCwtNC4zNDEgeiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC43MzUwOTE4NywwLDAsMC43MzUwOTE4NywwLjYsLTAuMjUpIgogICAgICAgICBpbmtzY2FwZTpjb25uZWN0b3ItY3VydmF0dXJlPSIwIgogICAgICAgICBzdHlsZT0iZmlsbDojMDA0M2E1IiAvPgogICAgPC9nPgogICAgPHBhdGgKICAgICAgIGlkPSJCYWNrX0Zvb3QiCiAgICAgICBkPSJtIDEzMC42ODYsMTIxLjMxIGMgMi4wMzUsLTMuNTI0IDQuNjkxLC01LjA2MyA4LjczNywtNS41NiAxLjczNywtMC4xOTkgMi45NzgsLTAuMTQ5IDQuMzY4LDAuODk0IDEuMjY2LDAuOTQzIC0wLjQ5MSwzLjQ5NyAtNi4xNzQsNC40OTEgNi4xMDksMC41NjggOS4zNTEsMS4yNjcgOS44NDcsMy42NSAwLjM3MywxLjg2MSAtMi4yODMsMi44NTQgLTQuMTY5LDIuNTgxIC00LjI5MywtMC42MiAtOC45ODUsLTIuMjgzIC0xMS4wMiwxLjU4OSAtMC41MjEsMC45OTMgLTAuNzQ1LDEuOTYgLTEuNzg3LDIuMjgzIC0xLjE0MiwwLjM0OCAtMi41MzIsLTAuMzcyIC0yLjY4MSwtMS41ODggLTAuMjQ4LC0yLjE2IDAuOTQ5LC0zLjQ5IDAuMzk3LC01LjU2IC0wLjE5OCwtMC43NDUgLTguMzM5LC0zLjg3MiAtMTEuNjY1LC01LjIxMiAxLjYzOCwtMC4zOTcgMy43OTcsLTEuODEyIDUuNDExLC0yLjI4NCAxLjA5MiwtMC4zMjMgNi4wMDYsMi4zMzMgOC43MzYsNC43MTYgeiIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuNzM1MDkxODcsMCwwLDAuNzM1MDkxODcsMC42NSwtMC4yNSkiCiAgICAgICBpbmtzY2FwZTpjb25uZWN0b3ItY3VydmF0dXJlPSIwIgogICAgICAgc3R5bGU9ImZpbGw6I2ZmYTYwMCIgLz4KICAgIDxnCiAgICAgICBpZD0iQm9keSI+CiAgICAgIDxwYXRoCiAgICAgICAgIGlkPSJCb2R5XzFfIgogICAgICAgICBkPSJtIDEzOC4xMjksOTYuMzMyIGMgMC4xNTcsLTAuOTM0IDAuNDE4LC0xLjkxMyAwLjc4NSwtMi45NTIgMi4xMzEsLTYuMDM4IDYuNTM1LC05LjYyNSAxMi42NDQsLTExLjY0OSAwLjk0OCwtMC4zMTQgMS45MzgsLTAuNjA1IDIuOTUxLC0wLjg2NCA0LjQ4NiwtMS4xNDYgOS40NTEsLTEuNTgyIDEzLjU1OCwwLjE4NCAtMC42NjgsLTAuODEzIC0xLjQ2NiwtMS42MjkgLTIuNDQ0LC0yLjQ0NSBDIDE1Mi41MzQsNjcuNjgyIDEzNi40MjgsNzMuMjA4IDEyMS44NjYsODIuMyAxMTAuNzE0LDg5LjI2MSA4Mi4zNjksMTA4LjQ0MiA3NC42OTgsMTA3LjAyMSA0OS41MzQsODguNDYxIDQwLjYwMyw5MS4zOTIgMzguNjE1LDk1LjM3IGMgLTEuODQ3LDMuNzY1IDIuNDE1LDcuOTU2IDUuODI1LDEwLjUxMyAtNi4xMjgsMS4wNDcgLTkuNjgsMC42MjEgLTEwLjA4Nyw0LjgzMSAtMC4zNzQsMy44NTkgNS4xMTQsNC40MDQgOC45NSw1LjM5OCAtMy40MSwxLjQyIC02LjMwNywzLjY2OCAtNC45OTEsNi40NDUgMS4yNzksMi43IDcuODE0LDMuMjY4IDExLjc5MiwyLjEzMSAtMi4xMzEsMy45NzggLTUuMTE0LDEzLjIxMiA0LjEzOSw5Ljg5MyA4LjU5MiwtMy4wODMgMTMuNDk2LC03LjgxMyAyMC43NDIsLTEzLjYzOCAxMS4yMjMsMTEuNjQ5IDI3Ljg0NSwxNi45MDYgMzUuOTQzLDEzLjc4IDE0LjE3NCwtNS40NyAyMi42MSwtMTguNDY1IDI3LjUxMywtMzMuMjQzIC0wLjUwNSwtMS42MTkgLTAuNjI0LC0zLjI5MyAtMC4zMTIsLTUuMTQ4IHoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuNzM1MDkxODcsMCwwLDAuNzM1MDkxODcsMC42LC0wLjI1KSIKICAgICAgICAgaW5rc2NhcGU6Y29ubmVjdG9yLWN1cnZhdHVyZT0iMCIKICAgICAgICAgc3R5bGU9ImZpbGw6IzI3OWFmYSIgLz4KICAgICAgPHBhdGgKICAgICAgICAgaWQ9IkV5ZV9TcG90IgogICAgICAgICBkPSJtIDE1MS41NTgsODEuNzMgYyAwLjk0OCwtMC4zMTQgMS45MzgsLTAuNjA1IDIuOTUxLC0wLjg2NCAtNS44NzUsLTQuODM4IC0xMy44NTgsLTQuMDA5IC0yMS4yMTIsLTAuNzA2IC00LjYzOSwyLjA4OCAtNy44MjMsNy4xMDEgLTQuOTMsMTAuOTY2IDMuNDg2LDQuNjU4IDcuODg3LDUuNTc4IDkuNzYzLDUuMjA2IDAuMTU3LC0wLjkzNCAwLjQxOCwtMS45MTMgMC43ODUsLTIuOTUyIDIuMTMsLTYuMDM5IDYuNTM0LC05LjYyNiAxMi42NDMsLTExLjY1IHoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuNzM1MDkxODcsMCwwLDAuNzM1MDkxODcsMC42LC0wLjI1KSIKICAgICAgICAgaW5rc2NhcGU6Y29ubmVjdG9yLWN1cnZhdHVyZT0iMCIKICAgICAgICAgc3R5bGU9ImZpbGw6IzAwNDNhNSIgLz4KICAgICAgPHBhdGgKICAgICAgICAgaWQ9IkJlYWsiCiAgICAgICAgIGQ9Im0gMTY5Ljg4NSw4Mi4wMTQgYyAtMC41ODMsLTAuMzc4IC0xLjE5MSwtMC42OTUgLTEuODE4LC0wLjk2NSAtNC4xMDcsLTEuNzY2IC05LjA3MiwtMS4zMyAtMTMuNTU4LC0wLjE4NCAtMS4wMTIsMC4yNTkgLTIuMDAzLDAuNTUgLTIuOTUxLDAuODY0IC02LjEwOSwyLjAyNCAtMTAuNTEzLDUuNjExIC0xMi42NDQsMTEuNjQ5IC0wLjM2NiwxLjAzOSAtMC42MjcsMi4wMTggLTAuNzg1LDIuOTUyIC0wLjMxMiwxLjg1NSAtMC4xOTMsMy41MjkgMC4zMTEsNS4xNDcgMC41OTYsMS45MTIgMS43MzgsMy43NDMgMy40NTgsNS42ODIgMy44NzIsNC4zNjkgMTAuNzc4LDYuNzY1IDE1LjQ2NywzLjAzNiAtMy45MDcsLTEuMjc5IC01Ljg3NywtNS4yMDIgLTUuMzgsLTkuMjg3IDExLjkxNSwtNC4wNjggMjAuNTgxLDE0LjU0MyAyMy4xNTcsMjYuNDI0IEMgMTg4LjUyMiw5OCAxNjkuODg1LDgyLjAxNCAxNjkuODg1LDgyLjAxNCBaIgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjczNTA5MTg3LDAsMCwwLjczNTA5MTg3LDAuNiwtMC4yNSkiCiAgICAgICAgIGlua3NjYXBlOmNvbm5lY3Rvci1jdXJ2YXR1cmU9IjAiCiAgICAgICAgIHN0eWxlPSJmaWxsOiNmZmE2MDAiIC8+CiAgICA8L2c+CiAgICA8cGF0aAogICAgICAgaWQ9IkZyb250X0Zvb3QiCiAgICAgICBkPSJtIDEyNS4xNCwxMzYuMDE4IGMgMy42NjYsLTQuNTI1IDcuNzY0LC02LjEwNiAxMy41OTMsLTUuOTAyIDIuNSwwLjEwOCA1LjM2NiwxLjA4MSA1Ljg0NiwzLjUyMSAwLjg2Niw0LjQwNSAtOS42NjEsMS45ODkgLTExLjc5Miw0LjEyIDcuODEzLC0wLjk5NSAxNS4xMjEsMy40NSAxNS4yODksNi45MjggMC4xMDksMi43MTQgLTMuODY2LDMuNTIzIC02LjQ3MSwyLjcxNSAtNS45MywtMS44MzggLTEyLjE4OCwtNS4yMzggLTE1LjkzMSwtMC4yMjIgLTAuOTU5LDEuMjg3IC0xLjQ5MiwyLjYwNSAtMy4wMzcsMi44MjcgLTEuNjkxLDAuMjM2IC0zLjQ5NSwtMS4wOTMgLTMuNDMzLC0yLjg0NSAwLjEzMywtMy4xMDcgMi44MjUsLTQuODc4IDEuODA2LC03Ljc2OSAtMS41NzgsLTQuNDc2IC05Ljk1OSwtNy4xNzUgLTE1LjMyMSwtOS45NzggMi40MDQsLTAuMTk0IDYuMDcxLC0xLjQ1OSA3LjkyLC0zLjE2NCAxLjk4NywwLjcxIDguMjA1LDUuNzkxIDExLjUzMSw5Ljc2OSB6IgogICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC43MzUwOTE4NywwLDAsMC43MzUwOTE4NywwLjY1LC0wLjI1KSIKICAgICAgIGlua3NjYXBlOmNvbm5lY3Rvci1jdXJ2YXR1cmU9IjAiCiAgICAgICBzdHlsZT0iZmlsbDojZmZhNjAwIiAvPgogICAgPGcKICAgICAgIGlkPSJFeWUiPgogICAgICA8cGF0aAogICAgICAgICBpZD0iV2hpdGUiCiAgICAgICAgIGQ9Im0gMTQ4LjMxNyw4My4xNjIgYyA0LjcxMyw1LjI4NSAtMy4yMjgsMTMuMTE0IC0xMC4yMjQsNy45MTUgLTIuNzMxLC0yLjAzIC0yLjI4NCwtNS45NTggLTAuNzQyLC03LjcxMiAyLjUyLC0yLjg2OCA4LjE3LC0zLjM0IDEwLjk2NiwtMC4yMDMgeiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC43MzUwOTE4NywwLDAsMC43MzUwOTE4NywwLjYsLTAuMjUpIgogICAgICAgICBpbmtzY2FwZTpjb25uZWN0b3ItY3VydmF0dXJlPSIwIgogICAgICAgICBzdHlsZT0iZmlsbDojZmZmZmZmIiAvPgogICAgICA8cGF0aAogICAgICAgICBpZD0iUHVwaWwiCiAgICAgICAgIGQ9Im0gMTQ2LjYwNSw4Ni4wNTggYyAwLjYyNCwwIDEuMTg5LDAuMjI4IDEuNTk4LDAuNTk2IDAuNDA5LDAuMzY4IDAuNjYyLDAuODc2IDAuNjYyLDEuNDM3IDAsMC41NjEgLTAuMjUzLDEuMDY5IC0wLjY2MiwxLjQzNyAtMC40MDksMC4zNjggLTAuOTc0LDAuNTk2IC0xLjU5OCwwLjU5NiAtMC42MjQsMCAtMS4xODksLTAuMjI4IC0xLjU5OCwtMC41OTYgLTAuNDA5LC0wLjM2OCAtMC42NjIsLTAuODc2IC0wLjY2MiwtMS40MzcgMCwtMC41NjEgMC4yNTMsLTEuMDY5IDAuNjYyLC0xLjQzNyAwLjQwOSwtMC4zNjggMC45NzQsLTAuNTk2IDEuNTk4LC0wLjU5NiB6IgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjczNTA5MTg3LDAsMCwwLjczNTA5MTg3LDAuNiwtMC4yNSkiCiAgICAgICAgIGlua3NjYXBlOmNvbm5lY3Rvci1jdXJ2YXR1cmU9IjAiCiAgICAgICAgIHN0eWxlPSJmaWxsOiMyNzI1MjUiIC8+CiAgICA8L2c+CiAgICA8ZwogICAgICAgaWQ9IkZyb250X1dpbmciPgogICAgICA8cGF0aAogICAgICAgICBpZD0iT3V0ZXIiCiAgICAgICAgIGQ9Ik0gMTE4LjkxNyw5Mi41MzQgQyAxMDMuOTY1LDg0LjQyOSA4Ni41OTEsNTMuMDM3IDgxLjcxOCwzNS4yNjQgODAuNTg4LDMxLjE0NCA3NS44ODUsMjUuODE1IDY0LjYxMiwyMC42NDEgNTkuNTk1LDE4LjMzOCA1NC4wMSwxNi41NDEgNDcuMzk2LDE1Ljg2MyBjIDAsMCAtNS40NjksLTEuNjk2IC0xNy4zMDYsLTEuMDcxIC0yMC41NSwxLjA4NiAtNDguNTc5LDI0Ljg3NSAtMTMuMjEyLDM3Ljk1NyAxMC41ODgsMy45MTcgMjMuNDE0LDQuMjYxIDI5LjIyMSwzLjQ2OCAtMi4wMzcsMS40MzggLTEyLjg3Miw4LjE4MSAtMTAuMTQ4LDE0LjcwOCAzLjQ4Niw4LjM1MyAyNy44NTksLTIuNzgxIDI3Ljg1OSwtMi43ODEgLTQuNjM0LDMuODY3IC05LjU5Niw5LjgwMiAtNi43NTMsMTMuOTQgMy45OSw1LjgwNiAxNy41LDAuNzAyIDE3LjUsMC43MDIgLTEuMzIxLDMuMDA1IC00LjI2Miw4LjAwMyAtMS45ODMsMTAuNDY2IDIuMjc5LDIuNDYyIDEwLjM4NiwxLjUxNSAxMy4wMTUsMC41MzMgLTIuMzI0LDUuNjggLTEuNDIzLDkuNjY0IDAuODk3LDEwLjk2OSAyLjM0MywxLjYxOCA5LjMxMSwwLjYzMiAxNi4wNzQsLTMuMDYgNC4zODksNi42MDQgMTMuMDU1LDYuNzk5IDE2LjAzOSw0Ljc1NyAyLjg1OSwtMS45NTMgNC4wMzEsLTQuNzI0IDMuOTA3LC04LjE2OSAtMC4wNSwtMS42MjEgLTAuNTg5LC00LjEyMSAtMy41ODksLTUuNzQ4IHoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuNzM1MDkxODcsMCwwLDAuNzM1MDkxODcsMC42LC0wLjI1KSIKICAgICAgICAgaW5rc2NhcGU6Y29ubmVjdG9yLWN1cnZhdHVyZT0iMCIKICAgICAgICAgc3R5bGU9ImZpbGw6IzI3OWFmYSIgLz4KICAgICAgPHBhdGgKICAgICAgICAgaWQ9IklubmVyXzFfIgogICAgICAgICBkPSJNIDExOC45MTcsOTIuNTM0IEMgMTAzLjk2NSw4NC40MjkgODYuNTkxLDUzLjAzNyA4MS43MTgsMzUuMjY0IDgwLjU4OCwzMS4xNDQgNzUuODg1LDI1LjgxNSA2NC42MTIsMjAuNjQxIDU5LjU5NSwxOC4zMzggNTQuMDEsMTYuNTQxIDQ3LjM5NiwxNS44NjMgMzcuNTk0LDE0Ljc5MiAxNC43NiwyMC4xNjcgMTIuMDEsMzAuNDE3IDcuMTE2LDQ4LjY2NCA1OS4zNyw0OC41IDU5LjM3LDQ4LjUgYyAtMjYuODkyLDI3IDE0LjM5MiwxMi4zMzMgMTQuMzkyLDEyLjMzMyAtMjEuMzMzLDI2LjE2NyA5LDE0LjgzMyA5LDE0LjgzMyAtMTEuNTE4LDE5Ljc5OCAxMS4xNjYsMTEuMjI5IDExLjE2NiwxMS4yMjkgLTguNTc4LDE3LjQzIDguNjMyLDE0Ljc5NyA4LjYzMiwxNC43OTcgNC4zODksNi42MDQgMTMuMDU1LDYuNzk5IDE2LjAzOSw0Ljc1NyAyLjg1OSwtMS45NTMgNC4wMzEsLTQuNzI0IDMuOTA3LC04LjE2OSAtMC4wNSwtMS42MTkgLTAuNTg5LC00LjExOSAtMy41ODksLTUuNzQ2IHoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuNzM1MDkxODcsMCwwLDAuNzM1MDkxODcsMC42LC0wLjI1KSIKICAgICAgICAgaW5rc2NhcGU6Y29ubmVjdG9yLWN1cnZhdHVyZT0iMCIKICAgICAgICAgc3R5bGU9ImZpbGw6IzAwNDNhNSIgLz4KICAgIDwvZz4KICAgIDxnCiAgICAgICBpZD0iTF9FeWUiPgogICAgICA8cGF0aAogICAgICAgICBpZD0iRXllYmFsbF8xXyIKICAgICAgICAgZD0ibSA0OC42MzgsMjIuODMxIGMgMi45MjYsNC40OCAyLjYxOCw5Ljg2MiAtMC42ODIsMTIuMDE1IC0zLjMwMywyLjE1OSAtOC4zNTIsMC4yNzIgLTExLjI3NSwtNC4yMDggLTIuOTI4LC00LjQ4IC0yLjYyNCwtOS44NiAwLjY3OCwtMTIuMDE3IDMuMzAyLC0yLjE1NiA4LjM1LC0wLjI3MiAxMS4yNzksNC4yMSIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC42NjI5Mzk2NywwLjM5OTA1ODg4LC0wLjM5OTA1ODg4LDAuNjYyOTM5NjcsODcuMjUsMjkuMikiCiAgICAgICAgIGlua3NjYXBlOmNvbm5lY3Rvci1jdXJ2YXR1cmU9IjAiCiAgICAgICAgIHN0eWxlPSJmaWxsOiNmZmZmZmY7c3Ryb2tlOiMwMDAwMDAiIC8+CiAgICAgIDxwYXRoCiAgICAgICAgIGlkPSJQdXBpbF8xXyIKICAgICAgICAgZD0ibSA0Ni44NSwyOC43MTkgYyAwLDEuMDgxIC0wLjgwMywxLjk1NyAtMS44MDEsMS45NTcgLTAuOTkyLDAgLTEuODA0LC0wLjg3OCAtMS44MDQsLTEuOTU3IDAsLTEuMDggMC44MTIsLTEuOTU3IDEuODA0LC0xLjk1NyAwLjk5NiwwIDEuODAxLDAuODc3IDEuODAxLDEuOTU3IgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjY2MjkzOTY3LDAuMzk5MDU4ODgsLTAuMzk5MDU4ODgsMC42NjI5Mzk2Nyw4Ny4yNSwyOS4yKSIKICAgICAgICAgaW5rc2NhcGU6Y29ubmVjdG9yLWN1cnZhdHVyZT0iMCIgLz4KICAgIDwvZz4KICA8L2c+Cjwvc3ZnPgo=" id="431"/></item></list></costumes><sounds><list struct="atomic" id="432"></list></sounds><blocks></blocks><variables></variables><scripts><script x="27" y="23.66666666666667"><block s="receiveGo"></block><block s="hide"></block><block s="goToLayer"><l><option>front</option></l></block><block s="setSize"><l>5</l></block><block s="setColor"><color>19,81,255,1</color></block></script></scripts></sprite></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="label %&apos;text&apos; of size %&apos;size&apos;" type="command" category="pen"><comment x="0" y="0" w="90" collapsed="false">LABEL will stamp text on the stage at the given font size. The direction of the text is the direction the sprite is facing, and color will match the pen color.</comment><header></header><code></code><translations></translations><inputs><input type="%txt">Hello!</input><input type="%n">12</input></inputs><script><block s="doRun"><block s="reportJSFunction"><list><l>text</l><l>size</l></list><l>var stage = this.parentThatIsA(StageMorph),&#xD;    context = stage.penTrails().getContext(&apos;2d&apos;),&#xD;    rotation = radians(this.direction() - 90),&#xD;    trans = new Point(&#xD;      this.center().x - stage.left(),&#xD;      this.center().y - stage.top()&#xD;    ),&#xD;    isWarped = this.Warped,&#xD;    len,&#xD;    pos;&#xD;&#xD;if (isWarped) {endWarp(); }&#xD;context.save();&#xD;context.font = size + &apos;px monospace&apos;;&#xD;context.textAlign = &apos;left&apos;;&#xD;context.textBaseline = &apos;alphabetic&apos;;&#xD;context.fillStyle = this.color.toString();&#xD;len = context.measureText(text).width;&#xD;trans = trans.multiplyBy(1 / stage.scale);&#xD;context.translate(trans.x, trans.y);&#xD;context.rotate(rotation);&#xD;context.fillText(text, 0, 0);&#xD;context.translate(-trans.x, -trans.y);&#xD;context.restore();&#xD;pos = new Point(&#xD;  len * Math.sin(radians(this.direction())),&#xD;  len * Math.cos(radians(this.direction())));&#xD;pos = pos.add(new Point(this.xPosition(), this.yPosition()));&#xD;this.gotoXY(pos.x, pos.y, false);&#xD;this.changed();&#xD;if (isWarped) {this.startWarp(); }&#xD;stage.changed();</l></block><list><block var="text"/><block var="size"/></list></block></script></block-definition><block-definition s="map %&apos;function&apos; over %&apos;lists&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%repRing"></input><input type="%mult%l"></input></inputs><script><block s="doWarp"><script><block s="doDeclareVariables"><list><l>mapone</l><l>mapmany</l></list></block><block s="doSetVar"><l>mapone</l><block s="reifyScript"><script><block s="doIf"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doReport"><block s="reportCONS"><block s="evaluate"><block var="function"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><block s="evaluate"><block var="mapone"/><list><block s="reportCDR"><block var="data"/></block></list></block></block></block></script><list><l>data</l></list></block></block><block s="doSetVar"><l>mapmany</l><block s="reifyScript"><script><block s="doIf"><custom-block s="empty? %l"><block s="reportListItem"><l>1</l><block var="data lists"/></block></custom-block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doReport"><block s="reportCONS"><block s="evaluate"><block var="function"/><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><block s="reportListItem"><l>1</l><l/></block></autolambda><list></list></block><list><block var="data lists"/></list></custom-block></block><block s="evaluate"><block var="mapmany"/><list><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><block s="reportCDR"><l/></block></autolambda><list></list></block><list><block var="data lists"/></list></custom-block></list></block></block></block></script><list><l>data lists</l></list></block></block><block s="doIfElse"><custom-block s="empty? %l"><block s="reportCDR"><block var="lists"/></block></custom-block><script><block s="doReport"><block s="evaluate"><block var="mapone"/><list><block s="reportListItem"><l>1</l><block var="lists"/></block></list></block></block></script><script><block s="doReport"><block s="evaluate"><block var="mapmany"/><list><block var="lists"/></list></block></block></script></block></script></block></script></block-definition><block-definition s="empty? %&apos;data&apos;" type="predicate" category="lists"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportEquals"><block var="data"/><block s="reportNewList"><list></list></block></block></block></script></block-definition><block-definition s="keep items such that %&apos;pred&apos; from %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%predRing"></input><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doIf"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doIfElse"><block s="evaluate"><block var="pred"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><script><block s="doReport"><block s="reportCONS"><block s="reportListItem"><l>1</l><block var="data"/></block><custom-block s="keep items such that %predRing from %l"><block var="pred"/><block s="reportCDR"><block var="data"/></block></custom-block></block></block></script><script><block s="doReport"><custom-block s="keep items such that %predRing from %l"><block var="pred"/><block s="reportCDR"><block var="data"/></block></custom-block></block></script></block></script></block></script></block-definition><block-definition s="combine with %&apos;function&apos; items of %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%repRing"></input><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doIf"><custom-block s="empty? %l"><block s="reportCDR"><block var="data"/></block></custom-block><script><block s="doReport"><block s="reportListItem"><l>1</l><block var="data"/></block></block></script></block><block s="doReport"><block s="evaluate"><block var="function"/><list><block s="reportListItem"><l>1</l><block var="data"/></block><custom-block s="combine with %repRing items of %l"><block var="function"/><block s="reportCDR"><block var="data"/></block></custom-block></list></block></block></script></block></script></block-definition><block-definition s="if %&apos;test&apos; then %&apos;true&apos; else %&apos;false&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%b"></input><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doIfElse"><block var="test"/><script><block s="doReport"><block s="evaluate"><block var="true"/><list></list></block></block></script><script><block s="doReport"><block s="evaluate"><block var="false"/><list></list></block></block></script></block></script></block-definition><block-definition s="for %&apos;i&apos; = %&apos;start&apos; to %&apos;end&apos; %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%upvar"></input><input type="%n">1</input><input type="%n">10</input><input type="%cs"></input></inputs><script><block s="doDeclareVariables"><list><l>step</l><l>tester</l></list></block><block s="doIfElse"><block s="reportGreaterThan"><block var="start"/><block var="end"/></block><script><block s="doSetVar"><l>step</l><l>-1</l></block><block s="doSetVar"><l>tester</l><block s="reifyReporter"><autolambda><block s="reportLessThan"><block var="i"/><block var="end"/></block></autolambda><list></list></block></block></script><script><block s="doSetVar"><l>step</l><l>1</l></block><block s="doSetVar"><l>tester</l><block s="reifyReporter"><autolambda><block s="reportGreaterThan"><block var="i"/><block var="end"/></block></autolambda><list></list></block></block></script></block><block s="doSetVar"><l>i</l><block var="start"/></block><block s="doUntil"><block s="evaluate"><block var="tester"/><list></list></block><script><block s="doRun"><block var="action"/><list></list></block><block s="doChangeVar"><l>i</l><block var="step"/></block></script></block></script></block-definition><block-definition s="join words %&apos;words&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%mult%txt"></input></inputs><script><block s="doWarp"><script><block s="doIf"><custom-block s="empty? %l"><block s="reportCDR"><block var="words"/></block></custom-block><script><block s="doReport"><block s="reportListItem"><l>1</l><block var="words"/></block></block></script></block><block s="doIf"><block s="reportEquals"><l></l><block s="reportListItem"><l>1</l><block var="words"/></block></block><script><block s="doReport"><custom-block s="join words %mult%txt"><block s="reportCDR"><block var="words"/></block></custom-block></block></script></block><block s="doIf"><block s="reportEquals"><l></l><block s="reportListItem"><l>2</l><block var="words"/></block></block><script><block s="doReport"><custom-block s="join words %mult%txt"><block s="reportCONS"><block s="reportListItem"><l>1</l><block var="words"/></block><block s="reportCDR"><block s="reportCDR"><block var="words"/></block></block></block></custom-block></block></script></block><block s="doReport"><block s="reportJoinWords"><list><block s="reportListItem"><l>1</l><block var="words"/></block><l> </l><custom-block s="join words %mult%txt"><block s="reportCDR"><block var="words"/></block></custom-block></list></block></block></script></block></script><scripts><script x="229.00000300000002" y="196.77778077777774"><block s="reportJoinWords"><list><l></l><l></l></list></block></script></scripts></block-definition><block-definition s="list $arrowRight sentence %&apos;data&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doReport"><custom-block s="join words %mult%txt"><block var="data"/></custom-block></block></script></block></script></block-definition><block-definition s="sentence $arrowRight list %&apos;text&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%txt"></input></inputs><script><block s="doWarp"><script><block s="doReport"><block s="reportTextSplit"><block var="text"/><l><option>whitespace</option></l></block></block></script></block></script></block-definition><block-definition s="catch %&apos;tag&apos; %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%upvar"></input><input type="%cs"></input></inputs><script><block s="doCallCC"><block s="reifyScript"><script><block s="doSetVar"><l>tag</l><block var="cont"/></block><block s="doRun"><block var="action"/><list></list></block></script><list><l>cont</l></list></block></block><custom-block s="ignore %s"><l>3</l></custom-block></script></block-definition><block-definition s="throw %&apos;cont&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s">catchtag</input></inputs><script><block s="doRun"><block var="cont"/><list></list></block></script></block-definition><block-definition s="catch %&apos;tag&apos; %&apos;value&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%upvar"></input><input type="%anyUE"></input></inputs><script><block s="doCallCC"><block s="reifyScript"><script><block s="doSetVar"><l>tag</l><block var="cont"/></block><block s="doReport"><block s="evaluate"><block var="value"/><list></list></block></block></script><list><l>cont</l></list></block></block></script></block-definition><block-definition s="throw %&apos;tag&apos; %&apos;value&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s">catchtag</input><input type="%s"></input></inputs><script><block s="doRun"><block var="tag"/><list><block var="value"/></list></block></script></block-definition><block-definition s="for each %&apos;item&apos; of %&apos;data&apos; %&apos;action&apos;" type="command" category="lists"><header></header><code></code><translations></translations><inputs><input type="%upvar"></input><input type="%l"></input><input type="%cs"></input></inputs><script><block s="doUntil"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doSetVar"><l>item</l><block s="reportListItem"><l>1</l><block var="data"/></block></block><block s="doRun"><block var="action"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><block s="doSetVar"><l>data</l><block s="reportCDR"><block var="data"/></block></block></script></block></script></block-definition><block-definition s="if %&apos;test&apos; do %&apos;action&apos; and pause all $pause-1-255-220-0" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%boolUE"></input><input type="%cs"></input></inputs><script><block s="doDeclareVariables"><list><l>breakpoint</l></list></block><block s="doIf"><block s="evaluate"><block var="test"/><list></list></block><script><block s="doSetVar"><l>breakpoint</l><block var="test"/></block><block s="doShowVar"><l>breakpoint</l></block><block s="doRun"><block var="action"/><list></list></block><block s="doPauseAll"></block><block s="doHideVar"><l></l></block></script></block></script></block-definition><block-definition s="word $arrowRight list %&apos;word&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%txt"></input></inputs><script><block s="doWarp"><script><block s="doReport"><block s="reportTextSplit"><block var="word"/><l><option>letter</option></l></block></block></script></block></script></block-definition><block-definition s="ignore %&apos;x&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs></block-definition><block-definition s="tell %&apos;sprite&apos; to %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s">Sprite</input><input type="%cs"></input></inputs><script><block s="doRun"><block s="reportAttributeOf"><block var="action"/><block var="sprite"/></block><list></list></block></script></block-definition><block-definition s="ask %&apos;sprite&apos; for %&apos;expression&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%s">Sprite</input><input type="%repRing"></input></inputs><script><block s="doReport"><block s="evaluate"><block s="reportAttributeOf"><block var="expression"/><block var="sprite"/></block><list></list></block></block></script></block-definition><block-definition s="list $arrowRight word %&apos;list&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doReport"><block s="reportJoinWords"><block var="list"/></block></block></script></block></script></block-definition><block-definition s="makeBoard" type="command" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doSwitchToCostume"><l>Empty</l></block><block s="show"></block><block s="setEffect"><l><option>ghost</option></l><l>30</l><comment w="78" collapsed="true">3.3.3 TIF B</comment></block><block s="setScale"><l>95</l><comment w="190" collapsed="true">Oops costumes are a bit too big.</comment></block><block s="doSetVar"><l>position number</l><l>1</l><comment w="53.333333333333336" collapsed="true">3.3.1.4</comment></block><custom-block s="for %upvar = %n to %n %cs"><l>i</l><l>1</l><l>3</l><script><custom-block s="for %upvar = %n to %n %cs"><l>j</l><l>1</l><l>3</l><script><block s="gotoXY"><block s="reportSum"><l>-100</l><block s="reportProduct"><l>50</l><block var="j"/></block></block><block s="reportDifference"><l>100</l><block s="reportProduct"><l>50</l><block var="i"/></block></block></block><block s="createClone"><l><option>myself</option></l></block><block s="doChangeVar"><l>position number</l><l>1</l><comment w="53.333333333333336" collapsed="true">3.3.1.4</comment></block></script></custom-block></script></custom-block><block s="hide"></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="%l"></input></inputs><script><block s="doReport"><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><block s="reportListItem"><l></l><block var="board"/></block></autolambda><list></list></block><list><block var="triple"/></list></custom-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 %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"></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="tied?" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="reportEquals"><block s="reportFindFirst"><block s="reifyPredicate"><autolambda><block s="reportIsA"><l></l><l><option>number</option></l></block></autolambda><list></list></block><block var="board"/></block><l></l></block></block></script></block-definition><block-definition s="draw win line" type="command" category="lists"><header></header><code></code><translations></translations><inputs></inputs><script><block s="goToLayer"><l><option>front</option></l></block><block s="show"></block><block s="doFor"><l>i</l><l>1</l><l>8</l><script><block s="doDeclareVariables"><list><l>line</l></list></block><block s="doIf"><block s="reportOr"><block s="reportEquals"><block s="reportListItem"><block var="i"/><custom-block s="status of all winning triples"></custom-block></block><block s="reportNewList"><list><l>X</l><l>X</l><l>X</l></list></block></block><block s="reportEquals"><block s="reportListItem"><block var="i"/><custom-block s="status of all winning triples"></custom-block></block><block s="reportNewList"><list><l>O</l><l>O</l><l>O</l></list></block></block></block><script><block s="doSetVar"><l>line</l><block s="reportListItem"><block var="i"/><block var="win lines"/></block></block><block s="up"></block><block s="doGotoObject"><block s="reportListItem"><l>1</l><block var="line"/><comment w="137.33333333333334" collapsed="false">This is why each line in WIN LINES is a list of points, each of which is a list of x,y coordinates:  It allows us to use the endpoints, as points, in the GO TO block.</comment></block></block><block s="doSayFor"><l>haha</l><l>2</l></block><block s="down"></block><block s="doGotoObject"><block s="reportListItem"><l>2</l><block var="line"/></block></block><block s="up"></block></script></block></script></block><block s="hide"></block></script><scripts><comment x="174" y="10" w="244" collapsed="false">I&apos;m kind of bummed that I didn&apos;t find a beautiful one-line solution using FIND FIRST, but it just gives the value it finds, not the position in the list, which is what we need to find the line endpoints in WIN LINES. So it&apos;s a plain old fashioned FOR loop.</comment></scripts></block-definition></blocks><variables><variable name="X&apos;s turn?"><bool>true</bool></variable><variable name="board"><list struct="atomic" id="1265">1,2,3,4,5,6,7,8,9</list></variable><variable name="playing"><bool>true</bool></variable><variable name="win lines"><list id="1266"><item><list id="1267"><item><list struct="atomic" id="1268">-100,50</list></item><item><list struct="atomic" id="1269">100,50</list></item></list></item><item><list id="1270"><item><list struct="atomic" id="1271">-100,0</list></item><item><list struct="atomic" id="1272">100,0</list></item></list></item><item><list id="1273"><item><list struct="atomic" id="1274">-100,-50</list></item><item><list struct="atomic" id="1275">100,-50</list></item></list></item><item><list id="1276"><item><list struct="atomic" id="1277">-50,100</list></item><item><list struct="atomic" id="1278">-50,-100</list></item></list></item><item><list id="1279"><item><list struct="atomic" id="1280">0,100</list></item><item><list struct="atomic" id="1281">0,-100</list></item></list></item><item><list id="1282"><item><list struct="atomic" id="1283">50,100</list></item><item><list struct="atomic" id="1284">50,-100</list></item></list></item><item><list id="1285"><item><list struct="atomic" id="1286">-100,100</list></item><item><list struct="atomic" id="1287">100,-100</list></item></list></item><item><list id="1288"><item><list struct="atomic" id="1289">-100,-100</list></item><item><list struct="atomic" id="1290">100,100</list></item></list></item></list></variable></variables></project><media name="U3L3-TicTacToe" app="Snap! 6, https://snap.berkeley.edu" version="1"></media></snapdata>