Colors chosen randomly with one channel held constant for each (except I think I only generated one random sequence, and then modified it to get everything else). Then I took a copy of the squares, separated out every other square (in a checkerboard pattern), applied separate transformations to each, and blurred the result.