I would use: ```rust let flag_ptr: *u32 = addr_of_mut!((*CELL.get()).flag); let val = flag_ptr.read_volatile(); if val == Magic::Good { let data_ptr: *mut Data = addr_of_mut!((*CELL.get()).data); return *data_ptr; } else { return Data::default(); } ```