code: func (it *Or) NextPath(ctx context.Context) bool {
  	if it.currentIterator != -1 {
  		currIt := it.internalIterators[it.currentIterator]
  		ok := currIt.NextPath(ctx)
  		if !ok {
  			it.err = currIt.Err()
  		}
  		return ok
  	}
  	return false
  }
docs: // An Or has no NextPath of its own -- that is, there are no other values
  // which satisfy our previous result that are not the result itself. Our
  // subiterators might, however, so just pass the call recursively. In the case of
  // shortcircuiting, only allow new results from the currently checked graph.iterator