@Nullable
  public VirtualFile getTopLevelRoot(@NotNull VirtualFile file) {
    VirtualFile root = getContentRoot(file);
    return root == null ? null : JBIterable.generate(root, r -> getContentRoot(r.getParent())).last();
  }
@Nullable
  public VirtualFile getTopLevelRoot(@NotNull VirtualFile file)