code: private static void fillInMissing(Data result) {
          // Initially we assume that previous divisor is 1 with no prefix or suffix.
          long lastDivisor = 1L;
          for (int i = 0; i < result.divisors.length; i++) {
              if (result.units.get(OTHER)[i] == null) {
                  result.divisors[i] = lastDivisor;
                  copyFromPreviousIndex(i, result.units);
              } else {
                  lastDivisor = result.divisors[i];
                  propagateOtherToMissing(i, result.units);
              }
          }
      }
docs: After reading information from resource bundle into a Data object, there
  is guarantee that it is complete.
  
  This method fixes any incomplete data it finds within <code>result</code>.
  It looks at each log10 value applying the two rules.
  <p>
  If no prefix is defined for the "other" variant, use the divisor, prefixes and
  suffixes for all defined variants from the previous log10. For log10 = 0,
  use all empty prefixes and suffixes and a divisor of 1.
  </p><p>
  Otherwise, examine each plural variant defined for the given log10 value.
  If it has no prefix and suffix for a particular variant, use the one from the
  "other" variant.
  </p>
  
  @param result this instance is fixed in-place.