Example, that's fresh on my mind. Doesn't even include the enum dance (TryFromPrimitive etc) ```rust #[derive(Debug)] struct LocationData { pub status: Status, pub direction: u8, pub speed_horizontal: u8, pub speed_vertical: i8, // ... } impl LocationData { pub fn from_bytes(bytes: &[u8]) -> Self { Self { status: Status::Ground, // todo direction: bytes[2], speed_horizontal: bytes[3], speed_vertical: bytes[4].into(), latitude: i32::from_le_bytes(bytes[5..9].try_into().unwrap()), longitude: i32::from_le_bytes(bytes[9..13].try_into().unwrap()), alt_baro: u16::from_le_bytes(bytes[13..15].try_into().unwrap()), alt_geo: u16::from_le_bytes(bytes[15..17].try_into().unwrap()), ```