pub fn with_theme<P: Program>( program: P, f: impl Fn(&P::State, Id) -> P::Theme, ) -> impl Program<State = P::State, Message = P::Message, Theme = P::Theme>