fn clone_try_fold<T: Clone, Acc, R>(
    f: impl FnMut(Acc, T) -> R
) -> impl FnMut(Acc, &T) -> R