pub(crate) trait SafeAdd<T: Copy + Add<T, Output = T>> { // Required method fn safe_add(&self, other: T) -> Result<T, CmsError>; }