It's difficult to say what's going on without seeing code, but if I were to do this, I'd write a Prototype PMC in PIR that subclasses the Class PMC and overrides find_method(). You can also override its add_parent() when you clone an instance, so that the new instance can look back to its parent for non-overridden methods.