code: def _clip(a, min=None, max=None, out=None, **kwargs):
      if min is None and max is None:
          raise ValueError("One of max or min must be given")
  
      if min is None:
          return um.minimum(a, max, out=out, **kwargs)
      elif max is None:
          return um.maximum(a, min, out=out, **kwargs)
      else:
          return um.clip(a, min, max, out=out, **kwargs)
  
imports: import os
  import pickle
  import warnings
  from contextlib import nullcontext
  from numpy._core import multiarray
  from numpy._core import umath
  from numpy._core.multiarray import asanyarray
  from numpy._core import numerictypes
  from numpy._core import _exceptions
  from numpy._core._ufunc_config import _no_nep50_warning
  from numpy._globals import _NoValue
label_desc: Use image node_id 8 for calling a global function with example usage: _clip(a, min, max, out) and returns: um, um, um