code: def combine_numeric_values(self, other):
          
          if self.values is None:
              ret = IdValues()
          else:
              ret = sum([IdValues(
                  {k: int(v) * int(other.values[key]) for k, v in value.items()})
                  for key, value in self.values.items()])
          return ret
docs: numeric_values * sp_values