@lakshmi-kannan does e9ccc5d seem right? Keeping the return type for finer ranges to Iterable<Range> because it keeps things simple as the `ItervalRangeIterator` returns it.