Improve UnionIterator