Btw I really wanted to avoid code duplication here, but I can't figure out a way to do it due to the two ranges being of different types. I can't use the ternary operator unfortunately:

```D
foreach (k, v; map!getter(arraySep == "" ? val.only : val.splitter(arraySep)))
```