pub trait SpinnerValue: Copy + PartialOrd + Display + Add<Output = Self> + AddAssign + Sub<Output = Self> + SubAssign where Self: Sized, { }