function SquareGame.new 0 push constant 2 call Memory.alloc 1 pop pointer 0 push constant 0 push constant 0 push constant 30 call Square.new 3 pop this 0 push constant 0 pop this 1 push pointer 0 return function SquareGame.dispose 0 push argument 0 pop pointer 0 push this 0 call Square.dispose 1 pop temp 0 push pointer 0 call Memory.deAlloc 1 pop temp 0 push constant 0 return function SquareGame.moveSquare 0 push argument 0 pop pointer 0 push this 1 push constant 1 eq if-goto IF_TRUE0 goto IF_FALSE0 label IF_TRUE0 push this 0 call Square.moveUp 1 pop temp 0 label IF_FALSE0 push this 1 push constant 2 eq if-goto IF_TRUE1 goto IF_FALSE1 label IF_TRUE1 push this 0 call Square.moveDown 1 pop temp 0 label IF_FALSE1 push this 1 push constant 3 eq if-goto IF_TRUE2 goto IF_FALSE2 label IF_TRUE2 push this 0 call Square.moveLeft 1 pop temp 0 label IF_FALSE2 push this 1 push constant 4 eq if-goto IF_TRUE3 goto IF_FALSE3 label IF_TRUE3 push this 0 call Square.moveRight 1 pop temp 0 label IF_FALSE3 push constant 5 call Sys.wait 1 pop temp 0 push constant 0 return function SquareGame.run 2 push argument 0 pop pointer 0 push constant 0 pop local 1 label WHILE_EXP0 push local 1 not not if-goto WHILE_END0 label WHILE_EXP1 push local 0 push constant 0 eq not if-goto WHILE_END1 call Keyboard.keyPressed 0 pop local 0 push pointer 0 call SquareGame.moveSquare 1 pop temp 0 goto WHILE_EXP1 label WHILE_END1 push local 0 push constant 81 eq if-goto IF_TRUE0 goto IF_FALSE0 label IF_TRUE0 push constant 0 not pop local 1 label IF_FALSE0 push local 0 push constant 90 eq if-goto IF_TRUE1 goto IF_FALSE1 label IF_TRUE1 push this 0 call Square.decSize 1 pop temp 0 label IF_FALSE1 push local 0 push constant 88 eq if-goto IF_TRUE2 goto IF_FALSE2 label IF_TRUE2 push this 0 call Square.incSize 1 pop temp 0 label IF_FALSE2 push local 0 push constant 131 eq if-goto IF_TRUE3 goto IF_FALSE3 label IF_TRUE3 push constant 1 pop this 1 label IF_FALSE3 push local 0 push constant 133 eq if-goto IF_TRUE4 goto IF_FALSE4 label IF_TRUE4 push constant 2 pop this 1 label IF_FALSE4 push local 0 push constant 130 eq if-goto IF_TRUE5 goto IF_FALSE5 label IF_TRUE5 push constant 3 pop this 1 label IF_FALSE5 push local 0 push constant 132 eq if-goto IF_TRUE6 goto IF_FALSE6 label IF_TRUE6 push constant 4 pop this 1 label IF_FALSE6 label WHILE_EXP2 push local 0 push constant 0 eq not not if-goto WHILE_END2 call Keyboard.keyPressed 0 pop local 0 push pointer 0 call SquareGame.moveSquare 1 pop temp 0 goto WHILE_EXP2 label WHILE_END2 goto WHILE_EXP0 label WHILE_END0 push constant 0 return