pub fn column_openings_by_rot<'a, EF: PrimeCharacteristicRing + Copy + 'a>( openings: &'a [EF], need_rot: bool, ) -> Box<dyn Iterator<Item = (EF, EF)> + 'a>