v1 and v2

Hmm, I wouldn't expect a method called `compareX()` to modify the receiver or the target...