fn map_try_fold<'a, T, B, Acc, R>( f: &'a mut impl FnMut(T) -> B, g: impl FnMut(Acc, B) -> R + 'a ) -> impl FnMut(Acc, T) -> R + 'a