Because inside the while loop, I needed to peek at the iterator to see if it had more items. At least in my implementation. In the the twenty seconds I have taken revisiting this, I can't see a way around it, can you?