pub trait Upcasted<'a, T> { // Required method fn upcasted(self) -> Box<dyn Iterator<Item = T> + 'a>; }