code: def __histoinsert(self, *, hist, x):
      from math import log, floor
  
      n = int(floor(log(x) / self.logk))
      x1 = self.k**n
      alpha = (self.k * x1 - x) / ((self.k - 1) * x1)
      # TODO: Kahan summation
      hist[(n, False)] = alpha + hist.get((n, False), 0)
      hist[(n + 1, False)] = 1 - alpha + hist.get((n + 1, False), 0)
      hist[(n, True)] = -(1 / 2) * alpha * (1 - alpha) + hist.get(
          (n, True), 0
      )
  
label_desc: Use image node_id 3 for calling the GTilde obj's underlying member method code with example usage: obj.__histoinsert() without return types