docs: def cysparse_type_to_real_sum_cysparse_type(cysparse_type):
      """
      Returns the best **real** type for a **real** sum for a given type.
  
      For instance:
  
          INT32_t -> FLOAT64_t
  
      Args:
          cysparse_type:
  
      """
  
      r_type = None
  
      if cysparse_type in ['INT32_t', 'UINT32_t', 'INT64_t', 'UINT64_t']:
          r_type = 'FLOAT64_t'
      elif cysparse_type in ['FLOAT32_t', 'FLOAT64_t']:
          r_type = 'FLOAT64_t'
      elif cysparse_type in ['FLOAT128_t']:
          r_type = 'FLOAT128_t'
      elif cysparse_type in ['COMPLEX64_t', 'COMPLEX128_t']:
          r_type = 'FLOAT64_t'
      elif cysparse_type in ['COMPLEX256_t']:
          r_type = 'FLOAT128_t'
      else:
          raise TypeError("Not a recognized type")
  
      assert r_type in ['FLOAT64_t', 'FLOAT128_t']
  
      return r_type