support for prefetching and lighter Iter struct