pub fn integer_range_down<A: Sub<Output = A> + One + Ord + Clone>( hi: A, low: A, ) -> impl Iterator<Item = A>