code: def at(self, a, indices, b=None):
      # todo handle setting duplicated keys, a separate operand may be needed
      if b is None:
          a[indices] = self(a[indices])
      else:
          a[indices] = self(a[indices], b)
  
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 3 for calling the TensorUfuncDef obj's underlying member method code with example usage: obj.at(a, indices, b) without return types