@1
MOV UP ACC
SAV
MOV RIGHT ACC
SUB 500
JLZ A
MOV 4 RIGHT
JMP B
A: ADD 500
MOV -1 RIGHT
B: ADD 1
MOV ACC RIGHT
SWP
MOV ACC RIGHT
MOV ACC DOWN
MOV RIGHT DOWN

@2
MOV UP LEFT
MOV LEFT ACC
SAV
MOV LEFT ACC
L: SWP
ADD 1
SWP
SUB 100
JGZ L
ADD 99
JRO LEFT
SWP
JMP O
O: MOV ACC LEFT

@4
MOV UP RIGHT
MOV -1 ACC
SAV
MOV UP ACC
ADD 1
L: SWP
ADD 1
SWP
SUB 10
JGZ L
ADD 9
SWP
MOV ACC RIGHT
SWP
MOV ACC RIGHT

@5
S: MOV LEFT ACC
SUB 2
JEZ T
MOV LEFT NIL
MOV LEFT DOWN
JMP H
T: MOV LEFT DOWN
MOV LEFT NIL
H: MOV DOWN ACC
JLZ S
ADD ACC
ADD ACC
ADD ACC
MOV ACC DOWN
JMP S

@8
MOV UP ACC
MOV ACC UP
ADD ACC
ADD UP
ADD UP
MOV ACC UP
ADD ACC
ADD UP
ADD UP
MOV -1 UP
MOV ACC DOWN
