@roberthorlings that looks good on surface, but the problem is that you cannot know whether there's anything to read without actually reading (see the code of `readOriginalRow()`). Going around this and reading ahead would of course be possible, but it wouldn't be simple. The reason is that `readOriginalRow()` changes quite a bit of state in the class. Not only does it reading for the preResults, it also prefills the non-map columns of the `preResults` into `returnArray` (method `prefillUnchangedColumns()`), sets the variables `mapIterables` and `mapIterators` (method `resetIterables()`) and actually skips the only read line of `preResults` if any of the iterators is empty and starts again.