@1
MOV RIGHT ACC
SAV
MOV RIGHT ACC
L: SWP
ADD 1
SWP
SUB 100
JGZ L
SWP
MOV UP DOWN
MOV ACC DOWN

@2
MOV UP ACC
SUB 499
JGZ H
ADD 500
MOV -1 LEFT
JMP B
H: MOV 4 LEFT
B: MOV ACC LEFT
L: SUB 100
JGZ L
ADD 100
MOV ACC DOWN

@4
S: MOV UP ACC
SUB 1
JEZ H
MOV UP NIL
MOV ACC RIGHT
MOV RIGHT DOWN
JMP S
H: MOV UP ACC
MOV 1 RIGHT
MOV RIGHT NIL
MOV ACC DOWN
JMP S

@5
MOV -1 ACC
SAV
MOV UP ACC
L: SWP
ADD 1
SWP
SUB 10
JGZ L
ADD 9
JRO LEFT
SWP
MOV ACC LEFT

@7
S: MOV UP RIGHT
MOV RIGHT ACC
JLZ S
ADD ACC
ADD ACC
ADD ACC
MOV ACC RIGHT
JMP S

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