private static @Nullable NewVirtualFile findRoot(@NotNull NewVirtualFileSystem fs, @NotNull List<String> names, @Nullable NewVirtualFile fsRoot) {
    if (fsRoot == null) {
      String rootName = ContainerUtil.getLastItem(names);
      fsRoot = ManagingFS.getInstance().findRoot(rootName, fs instanceof ArchiveFileSystem ? LocalFileSystem.getInstance() : fs);
      if (fsRoot != null && !StringUtilRt.equal(fsRoot.getName(), rootName, fsRoot.isCaseSensitive())) {
        // ignore really weird root names, like "/" under windows
        fsRoot = null;
      }
    }
    return fsRoot;
  }
private static @Nullable NewVirtualFile findRoot(@NotNull NewVirtualFileSystem fs, @NotNull List<String> names, @Nullable NewVirtualFile fsRoot)