<snapdata remixID="12906463"><project name="unit2project_pong_andersonja" app="Snap! 9.0, https://snap.berkeley.edu" version="2"><notes></notes><thumbnail>data:image/png;base64,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</thumbnail><scenes select="1"><scene name="unit2project_pong_andersonja"><notes></notes><hidden></hidden><headers></headers><code></code><blocks></blocks><stage name="Stage" width="480" height="360" costume="0" color="255,255,255,1" tempo="60" threadsafe="false" penlog="false" volume="100" pan="0" lines="round" ternary="false" hyperops="true" codify="false" inheritance="true" sublistIDs="false" id="5"><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="6"></list></costumes><sounds><list struct="atomic" id="7"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites select="1"><sprite name="PaddleR" idx="3" x="220" y="-72" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="80,80,80,1" pen="tip" id="12"><costumes><list id="13"><item><ref mediaID="PaddleR_cst_costume"></ref></item></list></costumes><sounds><list struct="atomic" id="14"></list></sounds><blocks></blocks><variables></variables><scripts><script x="61" y="30"><block s="receiveMessage"><l><option>__shout__go__</option></l><list></list><comment w="90" collapsed="false">Allows for Player Control of Right Paddle (can move up or down, but not off the stage.)</comment></block><block s="gotoXY"><l>220</l><l>0</l></block><block s="doForever"><script><block s="doIf"><block s="reportVariadicAnd"><list><block s="reportKeyPressed"><l><option>w</option></l></block><block s="reportVariadicLessThan"><list><block s="yPosition"></block><l>140</l></list></block></list></block><script><block s="changeYPosition"><l>4.5</l></block></script><list></list></block><block s="doIf"><block s="reportVariadicAnd"><list><block s="reportKeyPressed"><l><option>s</option></l></block><block s="reportVariadicGreaterThan"><list><block s="yPosition"></block><l>-140</l></list></block></list></block><script><block s="changeYPosition"><l>-4.5</l></block></script><list></list></block></script></block></script></scripts></sprite><sprite name="PaddleL" idx="2" x="-220" y="-67.5" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="80,80,80,1" pen="tip" id="70"><costumes><list id="71"><item><ref mediaID="PaddleL_cst_costume"></ref></item></list></costumes><sounds><list struct="atomic" id="72"></list></sounds><blocks></blocks><variables></variables><scripts><script x="10" y="45.00000000000006"><block s="receiveMessage"><l><option>__shout__go__</option></l><list></list><comment w="90" collapsed="false">Allows Player Control if MODE is PVP, and dicates AI Speed if MODE is PVE.</comment></block><block s="gotoXY"><l>-220</l><l>0</l></block><block s="doForever"><script><block s="doIf"><block s="reportVariadicEquals"><list><block var="MODE"/><l>PVP</l></list></block><script><block s="doIf"><block s="reportVariadicAnd"><list><block s="reportKeyPressed"><l><option>up arrow</option></l></block><block s="reportVariadicLessThan"><list><block s="yPosition"></block><l>140</l></list></block></list></block><script><block s="changeYPosition"><l>4.5</l></block></script><list></list></block><block s="doIf"><block s="reportVariadicAnd"><list><block s="reportKeyPressed"><l><option>down arrow</option></l></block><block s="reportVariadicGreaterThan"><list><block s="yPosition"></block><l>-140</l></list></block></list></block><script><block s="changeYPosition"><l>-4.5</l></block></script><list></list></block></script><list></list></block><block s="doIf"><block s="reportVariadicEquals"><list><block var="MODE"/><l>PVE</l></list></block><script><block s="doForever"><script><block s="doGlide"><block s="reportQuotient"><block s="reportVariadicSum"><list><block s="reportDifference"><l>15</l><block s="reportVariadicProduct"><list><block var="score_2"/><l>2</l></list></block></block><block s="reportQuotient"><block var="score_1"/><l>2</l></block></list></block><l>11</l></block><l>-220</l><block var="BALL_Y"/></block></script></block></script><list></list></block></script></block></script></scripts></sprite><sprite name="Ball" idx="1" x="213" y="0" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="80,80,80,1" pen="tip" id="176"><costumes><list id="177"><item><ref mediaID="Ball_cst_Untitled"></ref></item></list></costumes><sounds><list id="178"><item><ref mediaID="Ball_snd_Pop"></ref></item></list></sounds><blocks></blocks><variables></variables><scripts><script x="443.3333333333337" y="434.0000000000001"><block s="receiveMessage"><l>Begin Round</l><list></list><comment w="90" collapsed="false">Controls the Softlock Clock. Once the clock reaches six seconds, the ball is teleported to escape a softlock that could be caused by the ball&apos;s realistic bouncing physics.&#xD;&#xD;A failsafe is also included that should absolutely never trigger, but is there just in case (if the clock exceeds 6.)</comment></block><block s="doSetVar"><l>softlock_clock</l><l>0</l></block><block s="doForever"><script><block s="doChangeVar"><l>softlock_clock</l><l>1</l></block><block s="doIf"><block s="reportVariadicEquals"><list><block var="softlock_clock"/><l>6</l></list></block><script><block s="gotoXY"><block s="reportRandom"><l>-100</l><l>100</l></block><block s="reportRandom"><l>-100</l><l>100</l></block></block><block s="doIfElse"><block s="reportVariadicEquals"><list><block s="reportRandom"><l>1</l><l>2</l></block><l>1</l></list></block><script><block s="setHeading"><l>90</l></block></script><script><block s="setHeading"><l>-90</l></block></script></block><block s="doSayFor"><l>Softlock Fixed!</l><l>0.5</l></block><block s="doSetVar"><l>softlock_clock</l><l>0</l></block></script><list><block s="reportVariadicGreaterThan"><list><block var="softlock_clock"/><l>6</l></list></block><script><block s="bubble"><l>A Bug Has Occured! Please Restart The Program.</l></block><block s="doStopThis"><l><option>all</option></l></block></script></list></block><block s="doWait"><l>1</l></block></script></block></script><script x="458.9999999999998" y="22"><block s="receiveGo"><comment w="90" collapsed="false">Resets sprite positions, all meaningful variables, and current speech before asking questions and storing data for the game ahead.</comment></block><block s="gotoXY"><l>0</l><l>0</l></block><block s="doStopThis"><l><option>other scripts in sprite</option></l></block><block s="doSetVar"><l>score_1</l><l>0</l></block><block s="doSetVar"><l>score_2</l><l>0</l></block><block s="bubble"><l></l></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><block s="getLastAnswer"></block><l>PVE</l></list></block><block s="reportVariadicEquals"><list><block s="getLastAnswer"></block><l>PVP</l></list></block></list></block><script><block s="doAsk"><l>Are you playing PVP (with another player) or PVE (against an automated left paddle). Answer PVE or PVP.</l></block></script><comment w="90" collapsed="false">Does not progress until the player inputs a valid mode.</comment></block><block s="doSetVar"><l>MODE</l><block s="getLastAnswer"></block></block><block s="doAsk"><l>Player 1 Name (Right Paddle)</l></block><block s="doSetVar"><l>player1_name</l><block s="getLastAnswer"></block></block><block s="doIf"><block s="reportVariadicEquals"><list><block var="MODE"/><l>PVP</l></list></block><script><block s="doAsk"><l>Player 2 Name (Left Paddle)</l></block><block s="doSetVar"><l>player2_name</l><block s="getLastAnswer"></block></block></script><list></list></block><block s="doBroadcast"><l>Begin Round</l><list></list></block></script><script x="172.99999999999932" y="10"><block s="receiveKey"><l><option>space</option></l><list></list><comment w="90" collapsed="false">Allows you to begin the game using the Space Bar as well.</comment></block><block s="doBroadcast"><l><option>__shout__go__</option></l><list></list></block></script><script x="10" y="113.0000000000002"><block s="receiveMessage"><l>Begin Round</l><list></list><comment w="90" collapsed="false">Controls the ball&apos;s resets, initial direction, speed, and interactions with other sprites/edges of stage.</comment></block><block s="doDeclareVariables"><list><l>initial_direction</l><l>speed</l></list></block><block s="doSetVar"><l>speed</l><l>0</l></block><block s="doSetVar"><l>initial_direction</l><block s="reportRandom"><l>1</l><l>2</l></block></block><block s="gotoXY"><l>0</l><l>0</l></block><block s="doIfElse"><block s="reportVariadicEquals"><list><block var="initial_direction"/><l>1</l></list></block><script><block s="setHeading"><l>90</l></block></script><script><block s="setHeading"><l>-90</l></block></script></block><block s="doForever"><script><block s="doSetVar"><l>BALL_Y</l><block s="yPosition"></block></block><block s="forward"><block s="reportVariadicSum"><list><block s="reportVariadicProduct"><list><l>0.5</l><block var="speed"/></list></block><l>3</l></list></block></block><block s="doWait"><l>0.01</l></block><block s="doIf"><block s="reportTouchingColor"><color>0,223,89,1</color></block><script><block s="doSetVar"><l>softlock_clock</l><l>0</l></block><block s="turn"><l>180</l></block><block s="turn"><block s="reportRandom"><l>-25</l><l>25</l></block></block><block s="forward"><l>3</l></block><block s="doChangeVar"><l>speed</l><l>1</l></block><block s="playSound"><l>Pop</l></block></script><list><block s="reportVariadicGreaterThan"><list><block s="yPosition"></block><l>168</l></list></block><script><block s="doIfElse"><block s="reportVariadicAnd"><list><block s="reportVariadicGreaterThan"><list><block s="direction"></block><l>-1</l></list></block><block s="reportVariadicLessThan"><list><block s="direction"></block><l>181</l></list></block></list></block><script><block s="turn"><l>15</l></block><block s="forward"><l>1</l></block></script><script><block s="turn"><l>-15</l></block><block s="forward"><l>1</l></block></script></block></script><block s="reportVariadicLessThan"><list><block s="yPosition"></block><l>-168</l></list></block><script><block s="doIfElse"><block s="reportVariadicAnd"><list><block s="reportVariadicGreaterThan"><list><block s="direction"></block><l>-1</l></list></block><block s="reportVariadicLessThan"><list><block s="direction"></block><l>181</l></list></block></list></block><script><block s="turn"><l>-15</l></block><block s="forward"><l>1</l></block></script><script><block s="turn"><l>15</l></block><block s="forward"><l>1</l></block></script></block></script><block s="reportVariadicLessThan"><list><block s="xPosition"></block><l>-250</l></list></block><script><block s="doIfElse"><block s="reportVariadicLessThan"><list><block var="score_2"/><l>4</l></list></block><script><block s="doChangeVar"><l>score_2</l><l>1</l></block><block s="doBroadcast"><l>Begin Round</l><list></list></block></script><script><block s="doChangeVar"><l>score_2</l><l>1</l></block><block s="gotoXY"><l>0</l><l>0</l></block><block s="bubble"><block s="reportJoinWords"><list><block var="player1_name"/><l> Wins!</l></list></block></block><block s="doStopThis"><l><option>all</option></l></block></script></block></script><block s="reportVariadicGreaterThan"><list><block s="xPosition"></block><l>250</l></list></block><script><block s="doIfElse"><block s="reportVariadicLessThan"><list><block var="score_1"/><l>4</l></list></block><script><block s="doChangeVar"><l>score_1</l><l>1</l></block><block s="doBroadcast"><l>Begin Round</l><list></list></block></script><script><block s="doChangeVar"><l>score_1</l><l>1</l></block><block s="gotoXY"><l>0</l><l>0</l></block><block s="doIfElse"><block s="reportVariadicEquals"><list><block var="MODE"/><l>PVP</l></list></block><script><block s="bubble"><block s="reportJoinWords"><list><block var="player2_name"/><l> Wins!</l></list></block></block></script><script><block s="bubble"><l>AI Wins!</l></block></script></block><block s="doStopThis"><l><option>all</option></l></block></script></block></script></list></block></script></block></script></scripts></sprite><watcher scope="PaddleL" s="yPosition" style="normal" x="10" y="10" color="74,108,212" hidden="true"/><watcher scope="PaddleL" s="direction" style="normal" x="10" y="31.000001999999995" color="74,108,212" hidden="true"/><watcher scope="Ball" s="yPosition" style="normal" x="10" y="52.00000399999999" color="74,108,212" hidden="true"/><watcher scope="Ball" s="xPosition" style="normal" x="10" y="73.00000599999998" color="74,108,212" hidden="true"/><watcher scope="Ball" s="direction" style="normal" x="10" y="94.00000799999998" color="74,108,212" hidden="true"/><watcher var="MODE" style="normal" x="10" y="115.00000999999997" color="243,118,29" hidden="true"/><watcher var="BALL_Y" style="normal" x="10" y="136.00001199999997" color="243,118,29" hidden="true"/><watcher var="score_1" style="normal" x="3" y="6.000013999999965" color="243,118,29"/><watcher var="score_2" style="normal" x="378" y="5.00001599999996" color="243,118,29"/><watcher var="player2_name" style="normal" x="10" y="157.00001399999996" color="243,118,29" hidden="true"/><watcher var="player1_name" style="normal" x="10" y="178.00001599999996" color="243,118,29" hidden="true"/><watcher var="softlock_clock" style="normal" x="10" y="199.00001799999995" color="243,118,29" hidden="true"/><watcher scope="PaddleL" s="xPosition" style="normal" x="10" y="220.00001999999995" color="74,108,212" hidden="true"/></sprites></stage><variables><variable name="MODE"><l>PVP</l></variable><variable name="BALL_Y"><l>0</l></variable><variable name="score_1"><l>3</l></variable><variable name="score_2"><l>1</l></variable><variable name="player2_name"><l>K</l></variable><variable name="player1_name"><l>J</l></variable><variable name="softlock_clock"><l>3</l></variable></variables></scene></scenes></project><media name="unit2project_pong_andersonja" app="Snap! 9.0, https://snap.berkeley.edu" version="2"><costume name="costume" center-x="5" center-y="32.5" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAABBCAYAAADorTUSAAAAAXNSR0IArs4c6QAAAD9JREFUSEtjZACB+5H/wTQuoLickZGgIqjmUYV4g3I0eEaDByMERhPFaKIYTRTgEBjNCqNZYTQrDKGsQGT7EQC1SJHL4D8qeQAAAABJRU5ErkJggg==" mediaID="PaddleR_cst_costume"/><costume name="costume" center-x="5" center-y="32.5" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAABBCAYAAADorTUSAAAAAXNSR0IArs4c6QAAAD9JREFUSEtjZACB+5H/wTQuoLickZGgIqjmUYV4g3I0eEaDByMERhPFaKIYTRTgEBjNCqNZYTQrDKGsQGT7EQC1SJHL4D8qeQAAAABJRU5ErkJggg==" mediaID="PaddleL_cst_costume"/><costume name="Untitled" center-x="17" center-y="17" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACIAAAAiCAYAAAA6RwvCAAAAAXNSR0IArs4c6QAABYFJREFUWEfNmNtuE1cUhr+1Z8aHENuQkDQkbUITgkQ4KBBU2jsq9RXMVa/bx0jyGO11r8grVCp3LVUptCUUQUg5nxxIHAfb4/HsVe2xE0xKQoC2sCXL8kgz82nt9f/r3xZef4nq85tmZhD3a2aGjauSXHn+eyevaN2yg6UgM9PI4cNIXx+SyyFTi8jCwxbIgQH0wihaqaClEjo/j87MorJDoFeCOIC5Imb0C0whxJTTeN0+3lMl6HuMV+/COJBMFVvqJ+4RorUmcSEkLqexi99ji3PYVwFtByLFIqY4gTcq+BUl1dNNKgrI+D6Z2JBJV0k3FN+BpIRm2EXoWerNJvUgov50jUZOaCwqTa4Qbwf0MhCZnkZOgykVCPrKpHO7ycaWXCDkVcgbyIvQrZau2JJ2IJ4hFENVlTULq6KsRu7TZC2qUk0XCMMy0Tmws7NJ/3R0Gq397VzT05jBB3j7x0llI7o8n3xg6BFLn/XpC4RegR6BfKx0i7ZAVAg9YU1hNVaWY1gySilqsoTlaUYpewHVn67TuL+PeHYW2/nezSDywzReo5t0IaBblR6afGA8Bg0MoQyKoc+BADmUrNuV9gMbCDWg4kBEeAw8ULhnLfdRHuHzpByxlloj/HyWuLMqL4AUi3jFz0gN1OkOsuz1lCGFEYH9IgwLDKD0ipAXyFolrYrnQESIjRAq1FRZxeMJykNV7li4qTG3GnCPBqWHGdbmfqQxN5fAJGsDJFHHNEEAXf276DXCR8ZjTGDcCB8DQ6pJNfIIGZTAtUbHM9yexwiRKnWEVYQlVxFV/gKuq+VGrcEd6iyVoFqcJVpX0wbI2SJe9jDpQoFCJuZDNYwLHDLCQYQRoB9NKpER8K2rhGzqMUVdZRSaCqEIq6o8VuGWKNcU/mwq123E3eUaK7V5wjPtqiQgrhrffoN/8D67/Dz9GWUMwxErHDEwhiQ9slshS0uuzjuk7aAbPZc4ruK+XCM2EeoqrAD3VbkBXFbL5WaTG1GVR9cGefbV1zRdVRIQp5RTvQSFkILvMWyUCYXjYphQZb8RehF2qRJIazsTE9tyKVZb8oxUqAJLCLes5UqsXEKZr4XcbuRYOf+EyCnIPVTOnsWMLpOmxl5fGIuUSeCE2mRrBl1fKIlMHcD2EOt0LRgrroGVirqqwFWBX/G4FHkspANKi3sIz5zBugEm587h7VskW4sYIGQiVk4qnBBlXKHPQFZJmnNnEB0w4pqXRNYlhQWUixZ+iQxXfMOD2lGqp08TJyAXLuA3LpFLxQxJyDGxfKIwaZVRlD24aghee1t2MCKftw2aSDREWAZuYrholZ9tit9XUtzdO0llaopmAsIcwcUFCmQYUcNxFU4ZOGYtw04p6kaJtBr0dShEUFUsSuQUhHAH4TdizseWi36Dm8cPUKZI5OaK+bKXQAIK5Sqjkc+Up3wqwlG1DCUOCn4C4qBfYyUgTkFu6EHFGO4J/NEUztuYC13CYsaw8t2T9wnkvdmarZqVdrPq/9msm+WrykkLJ1DGIZkvby1fgZLdTr4vMzSUybhtaM7e39bQUCrO5i1cZStD22zxWY/h2DCBti3eJhGgF97M4hGqssniPWV+NeT2SK6lmHWLf2HodeXpDwxjKhyxcETc0COpyo6HHu2hp0JdYEUlCUbJ0MNyOWwPvdwgz6Y6h56ryuYYYALGUQ6hHTHAZVXdPgaYdgywLgbAqvLyGJCpsbK4OQasR4HOYJQK+AhhTG07GEk7GOn2wSiZLe1gpG8SjBzMllHRsF9gWIQB4ldHRdpRUd8kKq5Hxy3Ds2mH55actw3Pqizr24TndQW90XHCI/T03ztOJIH6vThgdQzXd37kfGHQvw+H8H8AvdO/JV6Sg/6TP2r+Brms9UznIjtWAAAAAElFTkSuQmCC" mediaID="Ball_cst_Untitled"/><sound name="Pop" sound="data:audio/ogg;base64,UklGRigCAABXQVZFZm10IBAAAAABAAEAESsAACJWAAACABAAZGF0YQQCAADVAAMDvQdyDe8VUx08I5sk4iCrFnMGVfFf2mDEjbNpqZKo5bFHxUHh8wLtJtFHSmF9byNwCmHOROodKvMPyWqn/ZElje6YObXo3eIMnTpEYHB2tXmiaNhFZxdK5Gy1epLegWuGcZ+OyCH84jB9Xd955H83calNthyp50+4jJYDiWmRT6712VwMADxQX+9vF2lWTgokcfJZxWejtpN4mfiyaNqjCY42a1cpZqJfvEb1H8jyA8r1rc6iH6syxPHqwBSrOShR8VY0SU4rAwQs27667KgOqdG8jN28BjwugEsUWSdSXTmsExzqccWtrSmnurMb0LD2pR56P8hRylFrP30f5/nT1oG+H7ZVvqzVvPUqGIIz9UGEQCwvDBNX8p/Vs8P1v3TLnON6AnogiTaGP9I4OiTDBpLnG86GvwjAFc9R6WsIfiUgOghBtTiWI1MGL+hWzyrC6sJa0QXqSQeUItc10DzsNUojWglH7hvYd8sNy2bWb+qxApIZMyp4MKorPB30CGTzv+G41/bWrN8Q780BKRNcH6gjSB+rE68DUvNw5rrf2+Az6cz2JAbbE/IcSh+EGskPfAHk8jXnDeGG4XroZ/ShAiwQXxoQH4wdXhY9C3T+5/LK6pbnhOng7/n41AIIC0oQkhHZDjcJGQJ5+532lvTd9df5H/+OBJcIFwqKCFUEYf4=" mediaID="Ball_snd_Pop"/></media></snapdata>