Went with an undoing approach that reconstructed the board.