use the #[non_owned] and #[mutable] attributes