code: func (cm *ClientManager) processed(node *ClientNode, maxCost, realCost uint64, now mclock.AbsTime) {
  	cm.lock.Lock()
  	defer cm.lock.Unlock()
  
  	if realCost > maxCost {
  		realCost = maxCost
  	}
  	cm.updateNodeRc(node, int64(maxCost-realCost), &node.params, now)
  	if uint64(node.corrBufValue) > node.bufValue {
  		if node.log != nil {
  			node.log.add(now, fmt.Sprintf("corrected  bv=%d  oldBv=%d", node.corrBufValue, node.bufValue))
  		}
  		node.bufValue = uint64(node.corrBufValue)
  	}
  }
docs: // processed updates the client buffer according to actual request cost after
  // serving has been finished.
  //
  // Note: processed should always be called for all accepted requests