I think we should give these more instructive names then LeftIterator and RightIterator since the semantics are a bit different for each. The names should get at what purpose they serve.