code: func (r *sentReq) update(ev reqPeerEvent) {
  	switch ev.event {
  	case rpSent:
  		r.lastReqQueued = false
  		r.lastReqSentTo = ev.peer
  	case rpSoftTimeout:
  		r.lastReqSentTo = nil
  		r.reqSrtoCount++
  	case rpHardTimeout:
  		r.reqSrtoCount--
  	case rpDeliveredValid, rpDeliveredInvalid:
  		if ev.peer == r.lastReqSentTo {
  			r.lastReqSentTo = nil
  		} else {
  			r.reqSrtoCount--
  		}
  	}
  }
docs: // update updates the queued/sent flags and timed out peers counter according to the event