docs: public static Map<String, Collection<String>> writeResourcesToDiskRepo(Map<String, Collection<String>> downloaded, File toDir,
                                                                             Map<String, List<List<RepositoryResource>>> installResources,
                                                                             String productVersion,
                                                                             EventManager eventManager, boolean defaultRepo) throws InstallException {
  
          int progress = 10;
          int interval1 = installResources.size() == 0 ? 90 : 90 / installResources.size();
  
          for (List<List<RepositoryResource>> targetList : installResources.values()) {
              for (List<RepositoryResource> mrList : targetList) {
                  int interval2 = mrList.size() == 0 ? interval1 : interval1 / mrList.size();
                  for (RepositoryResource installResource : mrList) {
                      try {
                          writeResourcesToDiskRepo(downloaded, toDir, installResource, eventManager, progress += interval2);
                      } catch (InstallException e) {
                          throw e;
                      } catch (Exception e) {
                          throw ExceptionUtils.createFailedToDownload(installResource, e, toDir);
                      }
                  }
              }
          }
          return downloaded;
      }