pub trait Expected {
// Provided methods
fn expected_add(self, rhs: Self) -> Self
where Self: CheckedAdd + Sized { ... }
fn expected_sub(self, rhs: Self) -> Self
where Self: CheckedSub + Sized { ... }
fn expected_mul(self, rhs: Self) -> Self
where Self: CheckedMul + Sized { ... }
fn expected_div(self, rhs: Self) -> Self
where Self: CheckedDiv + Sized { ... }
fn expected_rem(self, rhs: Self) -> Self
where Self: CheckedRem + Sized { ... }
}