code: func (it *And) AddSubIterator(sub graph.Iterator) {
  	if it.itCount > 0 {
  		it.internalIterators = append(it.internalIterators, sub)
  		it.itCount++
  		return
  	}
  	it.primaryIt = sub
  	it.itCount++
  }
docs: // Add a subiterator to this And iterator.
  //
  // The first iterator that is added becomes the primary iterator. This is
  // important. Calling Optimize() is the way to change the order based on
  // subiterator statistics. Without Optimize(), the order added is the order
  // used.