code: def hsplit(ary, indices_or_sections):
      """
      Split an array into multiple sub-arrays horizontally (column-wise).
  
      Please refer to the `split` documentation.  `hsplit` is equivalent
      to `split` with ``axis=1``, the array is always split along the second
      axis regardless of the array dimension.
  
      See Also
      --------
      split : Split an array into multiple sub-arrays of equal size.
  
      Examples
      --------
      >>> x = np.arange(16.0).reshape(4, 4)
      >>> x
      array([[  0.,   1.,   2.,   3.],
             [  4.,   5.,   6.,   7.],
             [  8.,   9.,  10.,  11.],
             [ 12.,  13.,  14.,  15.]])
      >>> np.hsplit(x, 2)
      [array([[  0.,   1.],
             [  4.,   5.],
             [  8.,   9.],
             [ 12.,  13.]]),
       array([[  2.,   3.],
             [  6.,   7.],
             [ 10.,  11.],
             [ 14.,  15.]])]
      >>> np.hsplit(x, np.array([3, 6]))
      [array([[  0.,   1.,   2.],
             [  4.,   5.,   6.],
             [  8.,   9.,  10.],
             [ 12.,  13.,  14.]]),
       array([[  3.],
             [  7.],
             [ 11.],
             [ 15.]]),
       array([], dtype=float64)]
  
      With a higher dimensional array the split is still along the second axis.
  
      >>> x = np.arange(8.0).reshape(2, 2, 2)
      >>> x
      array([[[ 0.,  1.],
              [ 2.,  3.]],
             [[ 4.,  5.],
              [ 6.,  7.]]])
      >>> np.hsplit(x, 2)
      [array([[[ 0.,  1.]],
             [[ 4.,  5.]]]),
       array([[[ 2.,  3.]],
             [[ 6.,  7.]]])]
  
      """
      if _nx.ndim(ary) == 0:
          raise ValueError(
              "hsplit only works on arrays of 1 or more dimensions"
          )
      if ary.ndim > 1:
          return split(ary, indices_or_sections, 1)
      else:
          return split(ary, indices_or_sections, 0)
  
imports: from __future__ import division, absolute_import, print_function
  import functools
  import warnings
  import numpy.core.numeric
  from numpy.core.numeric import asarray, zeros, outer, concatenate, array, asanyarray
  from numpy.core.fromnumeric import product, reshape, transpose
  from numpy.core.multiarray import normalize_axis_index
  from numpy.core import overrides
  from numpy.core import vstack, atleast_3d
  from numpy.core.shape_base import _arrays_for_stack_dispatcher, _warn_for_nonsequence
  from numpy.lib.index_tricks import ndindex
  from numpy.matrixlib.defmatrix import matrix
label_desc: Use image node_id 22 for calling a global function with example usage: hsplit(ary, indices_or_sections) and returns: split, split