@Override
 public int nextDoc() {
   assert docID != NO_MORE_DOCS;
   while (true) {
     docID++;
     if (docID == maxDoc) {
       docID = NO_MORE_DOCS;
       break;
     }
     values.setDocument(docID);
     if (values.count() != 0) {
       break;
     }
   }
   upto = 0;
   return docID;
 }
 @Override
 public int docValueCount() {
   return values.count();
 }
 @Override
 public long nextValue() {
   return values.valueAt(upto++);
 }