@Override
    public E next() {
      if (!hasNext()) throw new NoSuchElementException();
      if (pos < 0) {
        int offset = ~pos;
        advance();
        return fieldElement(offset);
      }
      int offset = pos;
      advance();
      return tableElement(offset);
    }
@Override
    public E next()