code: def squeeze(data, axis=None):
      """Squeeze axes in the array.
  
      Parameters
      ----------
      data : relay.Expr
          The input data to the operator.
  
      axis : Union[None, int, Tuple[int], List[int]] or Expr
          The set of axes to remove.
          If axis = None, remove all axes of dimension 1.
          If any specified axis has dimension that does not equal 1, it is an error.
  
      Returns
      -------
      result : relay.Expr
          The squeezed result.
      """
      if isinstance(axis, Constant):
          if axis.data.shape:
              axis = list(axis.data.numpy())
          else:
              axis = [axis.data.numpy().item()]
      if isinstance(axis, Expr):
          return _dyn_make.squeeze(data, axis)
      if isinstance(axis, int):
          axis = [axis]
      if isinstance(axis, (tuple, list)):
          tempaxis = []
          for tmpax in axis:
              if isinstance(tmpax, _expr.IntImm):
                  tempaxis.append(tmpax.value)
              else:
                  try:
                      tempaxis.append(int(tmpax))
                  except ValueError as err:
                      raise RuntimeError(
                          f"Unrecognized axis type: {err}"
                      )
          axis = tempaxis
      return _make.squeeze(data, axis)
  
imports: from ...tir import expr
  from ..expr import Constant, Expr, Tuple, TupleWrapper, const
  from .None import _make
  from .dyn import _make
  from .tensor import shape_of
label_desc: Use image node_id 7 for calling a global function with example usage: squeeze(data, axis) and returns: _make, _dyn_make