We are always instantiating a new array and `foreach` internally creates a new iterator for that array. I'd vastly prefer some ugly code duplication here.