add CachingIterator example