code: func GetPacketNumberLengthForHeader(packetNumber, leastUnacked PacketNumber) PacketNumberLen {
  	diff := uint64(packetNumber - leastUnacked)
  	if diff < (1 << (16 - 1)) {
  		return PacketNumberLen2
  	}
  	if diff < (1 << (24 - 1)) {
  		return PacketNumberLen3
  	}
  	return PacketNumberLen4
  }
docs: // GetPacketNumberLengthForHeader gets the length of the packet number for the public header
  // it never chooses a PacketNumberLen of 1 byte, since this is too short under certain circumstances