How much of a difference was there in perf? Does this difference also manifest in pypy?

In my opinion, it's better to keep the alternative implementation, since it's clearer that no state modifications are happening aside from the reading of the stream. I wouldn't block on it - just a concern.

Thanks!