pub fn uphill( map_size_lg: MapSizeLg, dh: &[isize], posi: usize, ) -> impl Clone + Iterator<Item = usize> + '_