             
         case .syncRequest:
             if payload.count == 4 {
-                let value: UInt32 = payload.withUnsafeBytes { $0.pointee }
+                let value = payload.withUnsafeBytes { $0.load(as: UInt32.self) }
                 let start = Int(UInt32(littleEndian: value))
                 
                 // Send the next batch of programs from our corpus

    // Helper function to unpack a little-endian, 32-bit unsigned integer from a data packet.
    private func readUint32(from data: Data, atOffset offset: Int) -> UInt32 {
        assert(offset >= 0 && data.count >= offset + 4)
        let value: UInt32 = data.withUnsafeBytes { $0[offset / 4] }
        return UInt32(littleEndian: value)
    }
}


        
        var length = UInt32(data.count + messageHeaderSize).littleEndian
        var type = type.rawValue.littleEndian
        let padding = Data(repeating: 0, count: paddingLength(for: Int(length)))
        
        var message = Data(bytes: &length, count: 4)
        message.append(Data(bytes: &type, count: 4))
        message.append(data)
        message.append(padding)
        
        if sendBuffer.count > 0 {
            // No more data can be send at this time. Queue the message.
