Does this actually work? I think each time you fetch an iterator it will return a new one pointing at the 0 index, ignoring any calls to `next`.