def broadcast_arrays(*args: Any, subok: bool = False) -> list[ndarray]:
    """

    Broadcast any number of arrays against each other.

    Parameters
    ----------
    `*args` : array_likes
        The arrays to broadcast.

    subok : bool, optional
        This option is ignored by cuPyNumeric

    Returns
    -------
    broadcasted : list of arrays
        These arrays are views on the original arrays.
        They are typically not contiguous.
        Furthermore, more than one element of a broadcasted array
        may refer to a single memory location.
        If you need to write to the arrays, make copies first.

    Availability
    --------
    Multiple GPUs, Multiple CPUs

    """
    arrs = [convert_to_cupynumeric_ndarray(arr) for arr in args]
    return _broadcast_arrays(arrs, subok=subok)


    Broadcast any number of arrays against each other.

    Parameters
    ----------
    `*args` : array_likes
        The arrays to broadcast.

    subok : bool, optional
        This option is ignored by cuPyNumeric

    Returns
    -------
    broadcasted : list of arrays
        These arrays are views on the original arrays.
        They are typically not contiguous.
        Furthermore, more than one element of a broadcasted array
        may refer to a single memory location.
        If you need to write to the arrays, make copies first.

    Availability
    --------
    Multiple GPUs, Multiple CPUs

    
cupynumeric/_module/array_dimension.py