It does, but the problem is that the Rational `__int__` is not the same as the Integer `__int__` (although actually, it should be the same, since in Integer, `self.q` is 1, but this way is slightly more efficient).