@0
L: MOV UP,ACC
MOV ACC,DOWN
JEZ N
SWP
SUB 30
JEZ W
ADD 30
S: MOV ACC,DOWN
U: ADD 3
SAV
JMP L
W: MOV -1,DOWN
JMP U
N: SAV
MOV 30,DOWN

@1


@2


@3
L: MOV UP,ACC
MOV ACC,RIGHT
MOV ACC,DOWN
MOV UP,ACC
JLZ W
SUB 30
JEZ N
ADD 30
MOV 0,DOWN
JMP P
W: MOV 0,ACC
JMP D
N: MOV 30,ACC
D: MOV 3,DOWN
P: MOV ACC,RIGHT

@4
L: MOV LEFT,DOWN
MOV LEFT,ACC
MOV ACC,DOWN
MOV ACC,DOWN

@5


@6
L: MOV UP,ACC
SWP
ADD UP
MOV ACC,RIGHT
SWP
SUB 2
JEZ C2
MOV 3,RIGHT
MOV 0,RIGHT
JMP L
C2: MOV 0,RIGHT
MOV 3,RIGHT

@7
L: MOV UP,RIGHT
MOV UP,DOWN
MOV LEFT,ACC
MOV ACC,DOWN
MOV RIGHT,DOWN
MOV RIGHT,DOWN
MOV -1,DOWN
MOV UP,DOWN
ADD 1
MOV ACC,DOWN
MOV LEFT,DOWN
MOV LEFT,DOWN
MOV -1,DOWN

@8
L: MOV LEFT,ACC
SUB 3
JEZ C3
JLZ C12
MOV 3,LEFT
MOV 3,LEFT
JMP L
C3: MOV 0,LEFT
MOV 3,LEFT
JMP L
C12: MOV 3,LEFT
MOV 0,LEFT
