format
using CallbackFilterIterator if available
Cycle is a InfiniteIterator