The problem with History was that we were coping the address of flipResultsData in the matchCache rather than the address of a copy of flipResultsData. So, for each isMatch, we were canting the underlying data of the only pointer being copied into the cache. Now, we’ll do a deep copy and add the address of the resulting pointer to the matchCache. So, we added copyWithZone to FlipResultsData, but we don’t how to call it or maybe how to initialize the storage. HW for 8/31: Fix History & fix the Deal button.