A personal preference thing really, but I would use `IteratorAggregate` instead so that you can use the existing `CMapIterator`. No big deal though.