Using Wave Function Collapse to solve puzzle map generation at scale