human
I wrote the below code

    def wrapper(method_resolver):
        @functools.wraps(method_resolver)
        def attribute_resolver(self, ty):
            class MethodTemplate(AbstractTemplate, ):
                key = template_key
                def generic(_, args, kws):
                    sig = method_resolver(self, ty, args, kws)
                    if ((sig is not None) and (sig.recvr is None)):
                        sig.recvr = ty
                    return sig
            return types.BoundFunction(MethodTemplate, ty)
        return attribute_resolver
    return wrapper

What's a good function header?
 ... Here's a good function header?
assistant
#Here's a good function header.

def bound_function(template_key):