pub fn is_within_range<T, R>(string: String, range: R) -> Result<(), String>where
    T: FromStr + Copy + Debug + PartialOrd + Add<Output = T> + From<usize>,
    T::Err: Display,
    R: RangeBounds<T> + Debug,