fn inspect_fold<T, Acc>(
    f: impl FnMut(&T),
    fold: impl FnMut(Acc, T) -> Acc
) -> impl FnMut(Acc, T) -> Acc