def __eq__(self, other):
    return type(other
        ) is RPath and self.basedir == other.basedir and self.p == other.p

def cp(self):
    return self.basedir / self.p

def __getattr__(self, attr):
    pass
Как создать подкласс класса, который имеет __new__ и зависит от значения cls?