@Override
  public void invoke(final @NotNull Project project,
                     final @NotNull PsiFile file,
                     @Nullable Editor editor,
                     final @NotNull PsiElement startElement,
                     @NotNull PsiElement endElement) {
    if (isAvailable(project, null, file)) {
      PsiDirectory directory = chooseDirectory(project, file);
      if (directory == null) return;
      WriteAction.run(() -> doCreate(directory, startElement));
    }
  }
@Override
  public void invoke(final @NotNull Project project,
                     final @NotNull PsiFile file,
                     @Nullable Editor editor,
                     final @NotNull PsiElement startElement,
                     @NotNull PsiElement endElement)