@SuppressWarnings("RedundantSuppression")
  public static boolean pathsEqual(@Nullable String path1, @Nullable String path2) {
    //noinspection StringEquality,SSBasedInspection
    if (path1 == path2) {
      return true;
    }
    if (path1 == null || path2 == null) {
      return false;
    }

    path1 = toCanonicalPath(path1, File.separatorChar, true);
    path2 = toCanonicalPath(path2, File.separatorChar, true);
    if (SystemInfoRt.isFileSystemCaseSensitive) {
      return path1.equals(path2);
    }
    else {
      return path1.equalsIgnoreCase(path2);
    }
  }
@SuppressWarnings("RedundantSuppression")
  public static boolean pathsEqual(@Nullable String path1, @Nullable String path2)