public static @NotNull JBIterable<? extends Change> filterChangesUnder(@NotNull Iterable<? extends Change> changes,
                                                                         @NotNull Collection<FilePath> filePaths) {
    if (filePaths.isEmpty()) return JBIterable.empty();

    RecursiveFilePathSet scope = new RecursiveFilePathSet(SystemInfoRt.isFileSystemCaseSensitive);
    scope.addAll(filePaths);

    return JBIterable.from(changes).filter(change -> isUnderScope(scope, change));
  }
public static @NotNull JBIterable<? extends Change> filterChangesUnder(@NotNull Iterable<? extends Change> changes,
                                                                         @NotNull Collection<FilePath> filePaths)