@Override
      public void visitImplicitClass(@NotNull PsiImplicitClass aClass) {
        if (!PsiMethodUtil.hasMainInClass(aClass)) {
          return;
        }
        if (PsiTreeUtil.hasErrorElements(aClass)) {
          return;
        }
        String message = JavaBundle.message("inspection.implicit.to.explicit.class.backward.migration.name");
        if (isInfoMode()) {
          holder.registerProblem(aClass, message, new ReplaceWithExplicitClassFix());
          return;
        }

        PsiMethod method = PsiMethodUtil.findMainMethod(aClass);
        if (method == null) {
          return;
        }
        PsiIdentifier identifier = method.getNameIdentifier();
        if (identifier == null) {
          return;
        }
        holder.registerProblem(identifier, message, new ReplaceWithExplicitClassFix());
      }
@Override
      public void visitImplicitClass(@NotNull PsiImplicitClass aClass)