pub fn get_input<T>( msg: &str, repeat_until_valid: bool, ) -> Result<T, InputError<T::Err>>where T: FromStr, T::Err: Error,