code: func (h *sentPacketHistory) MarkCannotBeRetransmitted(pn protocol.PacketNumber) error {
  	el, ok := h.packetMap[pn]
  	if !ok {
  		return fmt.Errorf("sent packet history: packet %d not found", pn)
  	}
  	if el.Value.canBeRetransmitted {
  		h.numOutstandingPackets--
  		if h.numOutstandingPackets < 0 {
  			panic("numOutstandingHandshakePackets negative")
  		}
  	}
  	el.Value.canBeRetransmitted = false
  	if el == h.firstOutstanding {
  		h.readjustFirstOutstanding()
  	}
  	return nil
  }
docs: // QueuePacketForRetransmission marks a packet for retransmission.
  // A packet can only be queued once.