@0
MOV 999 ACC
L:SAV
SUB RIGHT
JGZ N
MOV RIGHT NIL
SWP
JMP L
N:MOV RIGHT ACC
JNZ L
E:SWP
MOV ACC DOWN

@1
L:MOV UP ACC
MOV ACC LEFT
MOV ACC DOWN
MOV ACC LEFT
JEZ E
MOV -4 DOWN
JMP L
E:MOV 1 DOWN

@3
L:ADD UP
SWP
ADD 1
SWP
JRO UP
MOV ACC DOWN
SWP
MOV ACC LEFT
MOV 0 ACC
SAV

@4
MOV UP ACC
SWP
MOV UP ACC
G:SWP
MOV 1 RIGHT
MOV ACC RIGHT
ADD 1
SWP
SUB 1
JGZ G
MOV 3 RIGHT

@5
MOV UP ACC
NEG
G:JRO LEFT
ADD LEFT
JMP G
MOV ACC DOWN
