@0
L: MOV UP, ACC
SUB 512
JLZ N
MOV ACC, DOWN
MOV 64, DOWN
JMP L
N: ADD 512
MOV ACC, DOWN
MOV 0, DOWN

@1
L: MOV UP, ACC
SUB 256
JLZ N
MOV ACC, DOWN
MOV UP, ACC
ADD 32
MOV ACC, DOWN
JMP L
N: ADD 256
MOV ACC, DOWN
MOV UP, ACC
MOV ACC, DOWN

@2


@3


@4


@5
L: MOV UP, ACC
SUB 128
JLZ N
MOV ACC, RIGHT
MOV UP, ACC
ADD 16
MOV ACC, RIGHT
JMP L
N: ADD 128
MOV ACC, RIGHT
MOV UP, ACC
MOV ACC, RIGHT

@6
MOV LEFT, RIGHT
MOV LEFT, RIGHT
MOV RIGHT, ACC
ADD ACC
MOV ACC, DOWN

@7
MOV LEFT, RIGHT
ADD LEFT
P: ADD RIGHT
JGZ P
ADD 999
MOV ACC, RIGHT
ADD ACC
MOV ACC, DOWN
MOV ACC, LEFT
MOV 0, ACC

@8
L: MOV LEFT, ACC
A: SUB 32
JLZ B
MOV 4, LEFT
JMP A
B: ADD 32
C: SUB 8
JLZ D
MOV 1, LEFT
JMP C
D: MOV -999, LEFT
MOV LEFT, ACC
MOV ACC, DOWN
