code: def hstack(arrs):
      """
      Stack arrays in sequence horizontally (column wise).
      Equivalent to concatenation along the second axis, except for 1-D
      arrays where it concatenates along the first axis.
  
      This function makes most sense for arrays with up to 3 dimensions.
      :func:`.concatenate` provides more general stacking and concatenation operations.
  
      Parameters
      ----------
      tup : sequence of :class:`.NDArrayExpression`
          The arrays must have the same shape along all but the second axis,
          except 1-D arrays which can be any length.
  
      Returns
      -------
      :class:`.NDArrayExpression`
          The array formed by stacking the given arrays.
  
      See Also
      --------
      :func:`.concatenate`
      :func:`.vstack`
  
      Examples
      --------
      >>> a = hl.nd.array([1,2,3])
      >>> b = hl.nd.array([2, 3, 4])
      >>> hl.eval(hl.nd.hstack((a,b)))
      array([1, 2, 3, 2, 3, 4], dtype=int32)
      >>> a = hl.nd.array([[1],[2],[3]])
      >>> b = hl.nd.array([[2],[3],[4]])
      >>> hl.eval(hl.nd.hstack((a,b)))
      array([[1, 2],
             [2, 3],
             [3, 4]], dtype=int32)
      """
      head_ndim = arrs[0].ndim
  
      if head_ndim == 1:
          axis = 0
      else:
          axis = 1
  
      return concatenate(arrs, axis)
  
imports: from functools import reduce
  import hail
  from hail.expr.functions import _ndarray
  from hail.expr.functions import array
  from hail.expr.types import HailType, tfloat64, tfloat32, ttuple, tndarray
  from hail.typecheck import typecheck, nullable, oneof, tupleof, sequenceof
  from hail.expr.expressions import expr_int32, expr_int64, expr_tuple, expr_any, expr_array, expr_ndarray, expr_numeric, Int64Expression, cast_expr, construct_expr, expr_bool, unify_all
  from hail.expr.expressions.typed_expressions import NDArrayNumericExpression
  from hail.ir import NDArrayQR, NDArrayInv, NDArrayConcat, NDArraySVD, NDArrayEigh, Apply
label_desc: Use image node_id 19 for calling a global function with example usage: hstack(arrs) and returns: concatenate