@NotNull
  private SettingsEditorFragment<ApplicationConfiguration, MainClassPanel> createMainClass(ModuleClasspathCombo classpathCombo) {
    final var mainClassPanel = new MainClassPanel(classpathCombo);
    myMainClassFragment =
      new SettingsEditorFragment<>("mainClass", ExecutionBundle.message("application.configuration.main.class"), null, mainClassPanel, 20,
                                   (configuration, component) -> mainClassPanel.setClassName(configuration.getMainClassName()),
                                   (configuration, component) -> configuration.setMainClassName(mainClassPanel.getClassName()),
                                   Predicates.alwaysTrue()) {
        @Override
        public boolean isReadyForApply() {
          return myComponent.isReadyForApply();
        }
      };
    myMainClassFragment.setRemovable(false);
    myMainClassFragment.setEditorGetter(field -> field.getEditorComponent());
    myMainClassFragment.setValidation((configuration) -> mainClassPanel.getValidation(configuration));
    updateMainClassFragment(myInitialIsImplicitClass);
    return myMainClassFragment;
  }
@NotNull
  private SettingsEditorFragment<ApplicationConfiguration, MainClassPanel> createMainClass(ModuleClasspathCombo classpathCombo)