use `self.data.copy()` here, or test order might cause the other to fail.