code: func ValidateAndGetFullFCntUp(s DeviceSession, fCntUp uint32) (uint32, bool) {
  	// we need to compare the difference of the 16 LSB
  	gap := uint32(uint16(fCntUp) - uint16(s.FCntUp%65536))
  	if gap < band.Band().GetDefaults().MaxFCntGap {
  		return s.FCntUp + gap, true
  	}
  	return 0, false
  }
docs: // ValidateAndGetFullFCntUp validates if the given fCntUp is valid
  // and returns the full 32 bit frame-counter.
  // Note that the LoRaWAN packet only contains the 16 LSB, so in order
  // to validate the MIC, the full 32 bit frame-counter needs to be set.
  // After a succesful validation of the FCntUp and the MIC, don't forget
  // to synchronize the Node FCntUp with the packet FCnt.