docs: def broadcast_to(array, shape, subok=False):
      """Broadcast an array to a new shape.
  
      Parameters
      ----------
      array : array_like
          The array to broadcast.
      shape : tuple
          The shape of the desired array.
      subok : bool, optional
          If True, then sub-classes will be passed-through, otherwise
          the returned array will be forced to be a base-class array (default).
  
      Returns
      -------
      broadcast : array
          A readonly view on the original array with the given shape. It is
          typically not contiguous. Furthermore, more than one element of a
          broadcasted array may refer to a single memory location.
  
      Raises
      ------
      ValueError
          If the array is not compatible with the new shape according to NumPy's
          broadcasting rules.
  
      Notes
      -----
      .. versionadded:: 1.10.0
  
      Examples
      --------
      >>> x = np.array([1, 2, 3])
      >>> np.broadcast_to(x, (3, 3))
      array([[1, 2, 3],
             [1, 2, 3],
             [1, 2, 3]])
      """
      return _broadcast_to(array, shape, subok=subok, readonly=True)