private @NotNull FilePartNodeRoot getRoot(@NotNull NewVirtualFileSystem fs) {
    // have to have at least two roots unfortunately: for the local and temp file systems because their paths can overlap
    return fs instanceof TempFileSystem ? myTempRoot : myLocalRoot;
  }
private @NotNull FilePartNodeRoot getRoot(@NotNull NewVirtualFileSystem fs)