\\ Y \\ 2 1 \\ \ / \\ 3--*--0 X \\ / \ \\ 4 5 dz = [1, I, I-1, -1, -I, 1-I] z = 0 d = 0 n = -1 move(printonly=0) = { if (!printonly, z += dz[1+d%#dz]; ); print (n++ " " imag(z)); } L(r) = { move(); } F(r) = { if (r-->=0, F(r); d++; L(r); d++; F(r); d--; L(r); d--; F(r) , move() ); } move(1) F(7) quit