docstr: Eliminate duplicate matrix entries by adding them together.
  
  .. note::
      This is an *in place* operation.
  
  .. warning::
      Calling this function might synchronize the device.
  
  .. seealso::
     :meth:`scipy.sparse.csr_matrix.sum_duplicates`,
     :meth:`scipy.sparse.csc_matrix.sum_duplicates`
code: def sum_duplicates(self):
      """Eliminate duplicate matrix entries by adding them together.
  
      .. note::
          This is an *in place* operation.
  
      .. warning::
          Calling this function might synchronize the device.
  
      .. seealso::
         :meth:`scipy.sparse.csr_matrix.sum_duplicates`,
         :meth:`scipy.sparse.csc_matrix.sum_duplicates`
      """
      if self.has_canonical_format:
          return
      # TODO(leofang): add a kernel for compressed sparse matrices without
      # converting to coo
      coo = self.tocoo()
      coo.sum_duplicates()
      self.__init__(coo.asformat(self.format))
      self.has_canonical_format = True
  
imports: import string
  import warnings
  import numpy
  import cupy
  import cupyx
  from cupy import _core
  from cupy._core import _scalar
  from cupy._creation import basic
  from cupyx.scipy.sparse import _base
  from cupyx.scipy.sparse import _coo
  from cupyx.scipy.sparse import _data
  from cupyx.scipy.sparse import _sputils
  from cupyx.scipy.sparse import _util
  from cupyx.scipy.sparse import _index
label_desc: Use image node_id 35 for calling the _compressed_sparse_matrix obj's underlying member method code with example usage: obj.sum_duplicates() without return types