/** add a version that is older than this.bitSetVersion */
 private void addOlderVersion(long missingVersion) {
   // exceptions iterate in reverse order on their previousVersion variable
   if (this.exceptions == null) {
     return;
   }
   int i = 0;
   for (Iterator<RVVException> it = this.exceptions.iterator(); it.hasNext(); ) {
     RVVException e = it.next();
     if (e.nextVersion <= missingVersion) {
       return; // there is no RVVException for this version
     }
     if (e.previousVersion < missingVersion && missingVersion < e.nextVersion) {
       String fine = null;
       if (logger.isTraceEnabled(LogMarker.RVV)) {
         fine = e.toString();
       }
       e.add(missingVersion);
       if (e.isFilled()) {
         if (fine != null) {
           logger.trace(LogMarker.RVV, "Filled exception {}", fine);
         }
         it.remove();
       } else if (e.shouldChangeForm()) {
         this.exceptions.set(i, e.changeForm());
       }
       if (this.exceptions.isEmpty()) {
         this.exceptions = null;
       }
       return;
     }
     i++;
   }
 }