def METHOD_NAME(x, y):
    # This doesn't use register_reflected_overload like the other operators
    # because it falls back to inverting __eq__ rather than reflecting its
    # arguments (as per the definition of the Python data model).
    return take_first(
        try_call_method(x, "__ne__", 2),
        lambda x, y: not (x == y),
    )