[FOLD] refine iterator