fn inspect_try_fold<'a, T, Acc, R>(
    f: &'a mut impl FnMut(&T),
    fold: impl FnMut(Acc, T) -> R + 'a
) -> impl FnMut(Acc, T) -> R + 'a