code: def _array_ufunc(_, ufunc, method, *inputs, **kwargs):
      out = kwargs.get("out", tuple())
      for x in inputs + out:
          if not _check_arg(x):
              return NotImplemented
  
      if ufunc.signature is not None:
          return NotImplemented
      if ufunc not in UFUNC_TO_TENSOR_FUNCS:
          return NotImplemented
  
      try:
          tensor_func = getattr(UFUNC_TO_TENSOR_FUNCS[ufunc], method)
          return tensor_func(*inputs, **kwargs)
      except (AttributeError, NotImplementedError):
          return NotImplemented
  
file_path: mars/mars/tensor/ufunc/ufunc.py
imports: from numbers import Number
  import numpy
  from ..datasource import tensor
  from ..None import arithmetic, reduction
label_desc: Use image node_id 2 for calling a global function with example usage: _array_ufunc(_, ufunc, method) and returns: NotImplemented, NotImplemented, tensor_func, NotImplemented, NotImplemented