code: def untake(x, idx, vs):
      if isinstance(idx, list) and (
          len(idx) == 0 or not isinstance(idx[0], slice)
      ):
          idx = onp.array(idx, dtype="int64")
  
      def mut_add(A):
          onp.add.at(A, idx, x)
          return A
  
      return SparseObject(vs, mut_add)
  
imports: from __future__ import absolute_import
  from six import string_types
  from functools import partial
  import numpy
  from ..util import func
  from .None import numpy_wrapper
  from .numpy_boxes import ArrayBox
  from autograd.extend import primitive, vspace, defvjp, defvjp_argnum, SparseObject, VJPNode, register_notrace
label_desc: Use image node_id 46 for calling a global function with example usage: untake(x, idx, vs) and returns: SparseObject, A