@Override
    protected void applyFix(@NotNull Project project, @NotNull PsiElement element, @NotNull ModPsiUpdater updater) {
      if (!(element instanceof PsiJavaFile psiJavaFile)) return;
      PsiJavaModule descriptor = psiJavaFile.getModuleDeclaration();
      if (descriptor == null) return;
      if (!isEmptyModule(descriptor)) return;
      Set<PsiJavaModule> modules = walk(descriptor, stmt -> true);

      if (modules.isEmpty()) {
        PsiElement content = getStartContentElement(descriptor);
        PsiElement newLine = PsiParserFacade.getInstance(element.getProject())
          .createWhiteSpaceFromText("\n");
        PsiComment comment = JavaPsiFacade.getElementFactory(element.getProject())
          .createCommentFromText("// no dependencies", null);
        descriptor.addAfter(comment, content);
        descriptor.addAfter(newLine, content);
      }
      else {
        DependencyScope scope = getScope(descriptor);
        for (PsiJavaModule target : modules) {
          JavaModuleGraphUtil.addDependency(descriptor, target, scope);
        }
      }
    }
@Override
    protected void applyFix(@NotNull Project project, @NotNull PsiElement element, @NotNull ModPsiUpdater updater)