private final void isaac () {
		int i, x, y;

		b += ++c;
		for (i = 0; i < SIZE; ++i) {
			x = mem[i];
			switch (i & 3) {
			case 0: a ^= a <<  13; break;
			case 1: a ^= a >>>  6; break;
			case 2: a ^= a <<   2; break;
			case 3: a ^= a >>> 16; break;
			}
			a += mem[(i + SIZE / 2) & (SIZE - 1)];
			mem[i] = y = mem[((x         ) & MASK) >> 2] + a + b;
			rsl[i] = b = mem[((y >> SIZEL) & MASK) >> 2] + x;
		}
	}