allocate mem(2^30)

{
	zz = [0, I, I+1, I+2];
	en = 2;

	for (k=1, 2*3,
		zz = concat([
			apply(z -> imag(z) + I*real(z), zz),
			apply(z -> z+I*2^k, zz),
			apply(z -> z+(1+I)*2^k, zz),
			apply(z -> (2+I)*2^k - imag(z) - I*real(z), zz)
		]);
		en *= 2;
	);
	
	zz = concat(zz, en);

	for (n=1, #zz,
		print (n-1 " " real(zz[n]));
	);
}

quit