@0


@1
S: MOV UP, ACC
MOV ACC, DOWN
MOV -1, RIGHT
L: MOV ACC, RIGHT
MOV UP, ACC
MOV ACC, DOWN
MOV ACC, DOWN
JGZ L
JEZ L

@2


@3


@4
NEW: MOV UP, ACC
JLZ O
SAV
B: SUB UP
JGZ NEW
ADD UP
JMP B
O: SWP
NEG
MOV ACC, RIGHT
MOV ACC, RIGHT

@5
MOV LEFT, ACC
MOV -1, RIGHT
L1: SAV
ADD UP
JLZ D1
MOV ACC, RIGHT
SWP
JMP L1
D1: MOV LEFT, NIL
MOV RIGHT, DOWN
MOV RIGHT, DOWN
L2: MOV RIGHT, ACC
MOV ACC, DOWN
JGZ L2
JEZ L2

@6


@7
MOV UP, DOWN

@8

