def METHOD_NAME(
    array,
    axis=None,
    *,
    keepdims=False,
    mask_identity=False,
    highlevel=True,
    behavior=None,
):
    """
    Args:
        array: Array-like data (anything #ak.to_layout recognizes).
        axis (None or int): If None, combine all values from the array into
            a single scalar result; if an int, group by that axis: `0` is the
            outermost, `1` is the first level of nested lists, etc., and
            negative `axis` counts from the innermost: `-1` is the innermost,
            `-2` is the next level up, etc.
        keepdims (bool): If False, this reducer decreases the number of
            dimensions by 1; if True, the reduced values are wrapped in a new
            length-1 dimension so that the result of this operation may be
            broadcasted with the original array.
        mask_identity (bool): If True, reducing over empty lists results in
            None (an option type); otherwise, reducing over empty lists
            results in the operation's identity.
    Like #ak.prod, but treating NaN ("not a number") values as missing.
    Equivalent to
        ak.prod(ak.nan_to_none(array))
    with all other arguments unchanged.
    See also #ak.prod.
    """
    # Dispatch
    yield (array,)
    # Implementation
    return _impl(
        ak.operations.ak_nan_to_none._impl(array, False, None),
        axis,
        keepdims,
        mask_identity,
        highlevel,
        behavior,
    )