private static @Nullable List<Pattern> mergeIncludeFilters(@NotNull List<ProjectData> dataList) {
    boolean hasEmptyFilters = false;
    Set<String> result = new HashSet<>();
    for (ProjectData data : dataList) {
      List<Pattern> patterns = data.getIncludePatterns();
      if (patterns == null || patterns.isEmpty()) {
        hasEmptyFilters = true;
      }
      else {
        result.addAll(ContainerUtil.map(patterns, Pattern::pattern));
      }
    }
    if (hasEmptyFilters) {
      if (!result.isEmpty()) {
        LOG.warn("CoverageSuitesBundle contains suites with filters impossible to merge. " +
                 "Please consider setting more precise filters for all suites. No filters applied.");
      }
      return null;
    }
    return ContainerUtil.map(result, Pattern::compile);
  }
private static @Nullable List<Pattern> mergeIncludeFilters(@NotNull List<ProjectData> dataList)