boolean belongsToWatchRoots(@NotNull String reportedPath, boolean isFile) {
    return WatchRootsUtil.isCoveredRecursively(myOptimizedRecursiveWatchRoots, reportedPath) ||
           myOptimizedFlatWatchRoots.contains(reportedPath) ||
           (isFile && myOptimizedFlatWatchRoots.contains(getParentPath(reportedPath)));
  }
boolean belongsToWatchRoots(@NotNull String reportedPath, boolean isFile)