Aside from breaking encapsulation, checking for `RtRepo` instance is wrong in this case because as per `compareTo()` definition, `RtRepo` instances will always rank before other types. This means that, if the method was invoked from `RtRepo`, we may get a different order compared to if we're using, say, `Repo.Smart`, which violates `compareTo()` contract.