@Override
 public boolean hasNext() {
   while (!currentIterator.hasNext()) {
     if (currentIterator == itr2) {
       return false;
     }
     currentIterator = itr2;
   }
   return true;
 }
 @Override
 public AbstractEdge next() {
   return currentIterator.next();
 }