@0


@1
MOV UP, DOWN

@2
MOV UP, DOWN

@3


@4
S: MOV UP, ACC
L: SUB RIGHT
   JLZ UND
   MOV 1, DOWN
   MOV 0, RIGHT
   JMP L
UND: MOV 0, RIGHT
   ADD RIGHT
   MOV 1, RIGHT
   MOV -999, DOWN
   MOV ACC, DOWN
   JMP S

@5
L: MOV UP, ACC
   SAV
   MOV ACC, LEFT
M: MOV LEFT, ACC
   JNZ L
   SWP
   MOV ACC, LEFT
   SWP
   JMP M

@6


@7
L: ADD UP
   JLZ E
   JEZ E
   JMP L
E: ADD 999
   MOV ACC, DOWN
   SUB ACC
   MOV UP, RIGHT

@8
MOV LEFT, DOWN
