@Contract(pure = true)
  public static @Nullable Collection<ExternalSystemContentRootContributor.@NotNull ExternalContentRoot> getExternalProjectContentRoots(
    @NotNull Module module,
    @NotNull Collection<@NotNull ExternalSystemSourceType> sourceTypes
  ) {
    if (module.isDisposed()) return null;
    String systemId = ExternalSystemModulePropertyManager.getInstance(module).getExternalSystemId();
    if (systemId == null) return null;
    ExternalSystemContentRootContributor contributor =
      ExternalSystemContentRootContributorEP.findFirstSafe((c) -> c.isApplicable(systemId));

    if (contributor == null) return null;
    return contributor.findContentRoots(module, sourceTypes);
  }
@Contract(pure = true)
  public static @Nullable Collection<ExternalSystemContentRootContributor.@NotNull ExternalContentRoot> getExternalProjectContentRoots(
    @NotNull Module module,
    @NotNull Collection<@NotNull ExternalSystemSourceType> sourceTypes
  )