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