function Main.main 5 push constant 17000 pop local 4 push local 4 push constant 0 push constant 10 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 4 push constant 1 add push constant 333 call Memory.poke 2 pop temp 0 push local 4 push constant 0 push constant 11 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 4 push constant 1 add call Memory.peek 1 pop local 0 push local 4 push constant 2 push local 0 push constant 1 add pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 4 push constant 0 push constant 12 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 4 push constant 0 push constant 20 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push constant 20 call Memory.alloc 1 pop local 1 push local 4 push constant 3 push local 1 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 4 push constant 0 push constant 21 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 1 push constant 20 call Main.checkRange 2 pop temp 0 push local 4 push constant 0 push constant 22 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 4 push constant 0 push constant 30 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push constant 3 call Memory.alloc 1 pop local 2 push local 4 push constant 4 push local 2 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 4 push constant 0 push constant 31 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 2 push constant 3 call Main.checkRange 2 pop temp 0 push local 4 push constant 0 push constant 32 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 2 push constant 3 push local 1 push constant 3 call Main.checkOverlap 4 pop temp 0 push local 4 push constant 0 push constant 33 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 4 push constant 0 push constant 40 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push constant 500 call Memory.alloc 1 pop local 3 push local 4 push constant 5 push local 3 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 4 push constant 0 push constant 41 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 3 push constant 500 call Main.checkRange 2 pop temp 0 push local 4 push constant 0 push constant 42 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 3 push constant 500 push local 1 push constant 3 call Main.checkOverlap 4 pop temp 0 push local 4 push constant 0 push constant 43 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 3 push constant 500 push local 2 push constant 3 call Main.checkOverlap 4 pop temp 0 push local 4 push constant 0 push constant 44 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 4 push constant 0 push constant 50 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 1 call Memory.deAlloc 1 pop temp 0 push local 4 push constant 0 push constant 51 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 2 call Memory.deAlloc 1 pop temp 0 push local 4 push constant 0 push constant 52 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 4 push constant 0 push constant 60 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push constant 3 call Memory.alloc 1 pop local 2 push local 4 push constant 6 push local 2 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 4 push constant 0 push constant 61 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 2 push constant 3 call Main.checkRange 2 pop temp 0 push local 4 push constant 0 push constant 62 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 2 push constant 3 push local 3 push constant 500 call Main.checkOverlap 4 pop temp 0 push local 4 push constant 0 push constant 63 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 4 push constant 0 push constant 70 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 3 call Memory.deAlloc 1 pop temp 0 push local 4 push constant 0 push constant 71 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 2 call Memory.deAlloc 1 pop temp 0 push local 4 push constant 0 push constant 72 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 4 push constant 0 push constant 70 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push constant 8000 call Memory.alloc 1 pop local 1 push local 4 push constant 7 push local 1 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 4 push constant 0 push constant 71 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 1 push constant 8000 call Main.checkRange 2 pop temp 0 push local 4 push constant 0 push constant 72 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 1 call Memory.deAlloc 1 pop temp 0 push local 4 push constant 0 push constant 73 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push constant 7000 call Memory.alloc 1 pop local 1 push local 4 push constant 0 push constant 74 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 1 push constant 7000 call Main.checkRange 2 pop temp 0 push local 4 push constant 0 push constant 75 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 1 call Memory.deAlloc 1 pop temp 0 push local 4 push constant 8 push local 1 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push local 4 push constant 0 push constant 100 pop temp 1 add pop pointer 1 push temp 1 pop that 0 push constant 0 return function Main.checkRange 1 push argument 0 push argument 1 add push constant 1 sub pop local 0 push argument 0 push constant 2048 lt push local 0 push constant 16383 gt or not if-goto L0 call Sys.halt 0 pop temp 0 goto L1 label L0 label L1 push constant 0 return function Main.checkOverlap 2 push argument 0 push argument 1 add push constant 1 sub pop local 0 push argument 2 push argument 3 add push constant 1 sub pop local 1 push argument 0 push local 1 gt push local 0 push argument 2 lt or not not if-goto L2 call Sys.halt 0 pop temp 0 goto L3 label L2 label L3 push constant 0 return