code: @Override
      public boolean analyzeJar(Analyzer analyzer) throws Exception {
          loadInternalRangeFix();
          loadExternalRangeFix();
  
          if (analyzer.getReferred() == null) {
              return false;
          }
  
          // Data loaded, start analysis
          for (Map.Entry<Descriptors.PackageRef, Attrs> entry : analyzer.getReferred().entrySet()) {
              for (Range range : ranges) {
                  if (range.matches(entry.getKey().getFQN())) {
                      String value = range.getRange(analyzer);
                      if (value != null) {
                          reporter.warning("Updating import version of " + range.name + " to " + value);
                          entry.getValue().put("version", value);
                      }
                  }
              }
          }
          return false;
      }
docs: Analyzes the jar and update the version range.
  
  @param analyzer the analyzer
  @return {@code false}
  @throws Exception if the analaysis fails.