human
I wrote the below code

    @wraps(method)
    def coercing_method(a, b, *args, **kwargs):
        if ((type(a) == type(b)) or (a is None) or (b is None)):
            return method(a, b, *args, **kwargs)
        else:
            (ca, cb) = coerce_versions(a, b)
            return getattr(ca, method.__name__)(cb, *args, **kwargs)
    return coercing_method

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

def coerced(method):