def METHOD_NAME(*arys, **kwargs):
    """
    View inputs as arrays with at least two dimensions.
    Parameters
    ----------
    arys1, arys2, ... : array_like
        One or more array-like sequences.  Non-array inputs are converted
        to arrays.  Arrays that already have two or more dimensions are
        preserved.
    insert_axis : int (optional)
        Where to create a new axis if input array(s) have <2 dim.
    Returns
    -------
    res, res2, ... : ndarray
        An array, or tuple of arrays, each with ``a.ndim >= 2``.
        Copies are avoided where possible, and views with two or more
        dimensions are returned.
    Examples
    --------
    >>> atleast_2d(3.0) # doctest: +FLOAT_CMP
    array([[3.]])
    >>> x = np.arange(3.0)
    >>> atleast_2d(x) # doctest: +FLOAT_CMP
    array([[0., 1., 2.]])
    >>> atleast_2d(x, insert_axis=-1) # doctest: +FLOAT_CMP
    array([[0.],
           [1.],
           [2.]])
    >>> atleast_2d(x).base is x
    True
    >>> atleast_2d(1, [1, 2], [[1, 2]])
    [array([[1]]), array([[1, 2]]), array([[1, 2]])]
    """
    insert_axis = kwargs.pop('insert_axis', 0)
    slc = [slice(None)] * 2
    slc[insert_axis] = None
    slc = tuple(slc)
    res = []
    for ary in arys:
        ary = np.asanyarray(ary)
        if len(ary.shape) == 0:
            result = ary.reshape(1, 1)
        elif len(ary.shape) == 1:
            result = ary[slc]
        else:
            result = ary
        res.append(result)
    if len(res) == 1:
        return res[0]
    else:
        return res