pub fn sliding<'a, T>( z: &'a mut dyn Iterator<Item = T> ) -> impl Iterator<Item = (T, T)> + 'awhere T: Clone,