using deepcopy to fix board state overwrite