@0
S: MOV RIGHT, ACC
SUB 500
JLZ X
SUB 200
JLZ F5
MOV 8, DOWN
JMP S
F5: MOV 6, DOWN
JMP S
X: ADD 300
JLZ F0
MOV 3, DOWN
JMP S
F0: MOV 1, DOWN

@1
S: MOV UP, ACC
SAV
SUB 500
JLZ X
SUB 500
X: ADD 300
JLZ Y
SUB 200
Y: ADD 201
MOV ACC, DOWN
SWP
MOV ACC, LEFT

@3
L: ADD RIGHT
JGZ L
ADD UP
ADD 498
MOV ACC, DOWN
SUB ACC

@4
MOV UP, ACC
L: MOV 1, LEFT
SUB 100
JGZ L
MOV -500, LEFT
ADD 30
MOV ACC, RIGHT

@5
MOV LEFT, RIGHT

@6
S: MOV LEFT, ACC
JGZ P7
ADD 20
JGZ P5
ADD 30
JGZ P2
MOV 1, DOWN
ADD 20
JMP H
P7: MOV 8, DOWN
JMP H
P5: MOV 6, DOWN
JMP H
P2: MOV 3, DOWN
H: MOV ACC, DOWN

@7
MOV UP, DOWN

@8
L: ADD RIGHT
JGZ L
ADD 498
MOV ACC, DOWN
SUB ACC

@9
MOV RIGHT, LEFT
MOV RIGHT, ACC
L: MOV 1, LEFT
SUB 10
JGZ L
MOV -500, LEFT
ADD 9
MOV ACC, DOWN

@10
MOV UP, LEFT
