@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, RIGHT
MOV UP, ACC
ADD 32
MOV ACC, RIGHT
JMP L
N: ADD 256
MOV ACC, RIGHT
MOV UP, ACC
MOV ACC, RIGHT

@2
L: MOV LEFT, ACC
SUB 128
JLZ N
MOV ACC, RIGHT
MOV LEFT, ACC
ADD 16
MOV ACC, RIGHT
JMP L
N: ADD 128
MOV ACC, RIGHT
MOV LEFT, ACC
MOV ACC, RIGHT

@3
L: MOV LEFT, ACC
SUB 64
JLZ N
MOV ACC, RIGHT
MOV LEFT, ACC
ADD 8
MOV ACC, RIGHT
JMP L
N: ADD 64
MOV ACC, RIGHT
MOV LEFT, ACC
MOV ACC, RIGHT

@4
L: MOV LEFT, ACC
SUB 32
JLZ N
MOV ACC, DOWN
MOV LEFT, ACC
ADD 4
MOV ACC, DOWN
JMP L
N: ADD 32
MOV ACC, DOWN
MOV LEFT, ACC
MOV ACC, DOWN

@5


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

@7
L: MOV RIGHT, ACC
SUB 8
JLZ N
MOV RIGHT, ACC
ADD 1
JMP O
N: MOV RIGHT, ACC
O: MOV ACC, RIGHT
ADD ACC
MOV ACC, DOWN
MOV ACC, LEFT

@8
L: MOV UP, ACC
SUB 16
JLZ N
MOV ACC, LEFT
MOV UP, ACC
ADD 2
JMP C
N: ADD 16
MOV ACC, LEFT
MOV UP, ACC
C: MOV ACC, LEFT
MOV LEFT, ACC
MOV ACC, DOWN
