def _find( self, key ):

        found = PepNamespace._find( self, key )
        if found is not None:
            return found

        found = self.class_namespace._find( key )
        if isinstance( found, PepFunctionOverloadList ):
            return PepFunctionOverloadList(
                map(
                    lambda fn: PepInstanceMethod( self.instance, fn ),
                    found._list
                )
            )
        else:
            return found
 def __init__( self, instance, class_namespace ):
     #type_implements( PepInstance, instance )
     #type_implements( dict,        class_namespace )
     PepNamespace.__init__( self )
     self.instance = instance
     self.class_namespace = class_namespace