getCoords :: Generation -> Int -> (Int, Int)
getCoords (Generation w _ _ _ _) !idx = idx `quotRem` w
getCoords :: Generation -> Int -> (Int, Int)
getCoords (Generation w _ _ _ _) !idx = idx `quotRem` w
getCoords (Generation w _ _ _ _) !idx = idx `quotRem` w