Updated generation

Generation is now squarebased to reduce collisions.