docs: private boolean twoPhaseCurrentDocMatches() throws IOException {
      if (docId != spans1.spans.docID()) {
        reset();
        docId = spans1.spans.docID();
      }
      if (docId == NO_MORE_DOCS) {
        return false;
      } else {
        int spans2DocId = spans2.spans.docID();
        if (spans2DocId < docId) {
          spans2DocId = spans2.spans.advance(docId);
        }
        if (docId != spans2DocId) {
          return spans1.spans.nextStartPosition() != NO_MORE_POSITIONS;
        } else {
          return goToNextStartPosition();
        }
      }
    }