maybe nicer to instantiate `IsA` with `mro` ? (`...object_to_dict(IsA(mro=mro))`