cool, and this is optimal, right? non-arrays are not converted in to arrays, etc?
Seems they are not converted no, but it loops like an extra variable is stored though (a bool to denote existence of a value)
https://github.com/dlang/phobos/blob/v2.080.0/std/range/package.d#L9512
