private void installLanguageGeneratorWatcher(@NotNull WizardContext context) {
    //noinspection deprecation
    LanguageNewProjectWizard.EP_NAME.addExtensionPointListener(new ExtensionPointListener<>() {
      @Override
      public void extensionAdded(LanguageNewProjectWizard extension, @NotNull PluginDescriptor pluginDescriptor) {
        var generator = new LegacyLanguageGeneratorNewProjectWizard(context, extension);
        var generatorItem = new LanguageGeneratorItem(generator);
        myProjectTypeList.addLanguageGeneratorItem(generatorItem);
      }

      @Override
      public void extensionRemoved(LanguageNewProjectWizard extension, @NotNull PluginDescriptor pluginDescriptor) {
        myProjectTypeList.removeLanguageGeneratorItem(extension.getName());
      }
    }, context.getDisposable());
    LanguageGeneratorNewProjectWizard.EP_NAME.addExtensionPointListener(new ExtensionPointListener<>() {
      @Override
      public void extensionAdded(LanguageGeneratorNewProjectWizard extension, @NotNull PluginDescriptor pluginDescriptor) {
        var generator = new BaseLanguageGeneratorNewProjectWizard(context, extension);
        var generatorItem = new LanguageGeneratorItem(generator);
        myProjectTypeList.addLanguageGeneratorItem(generatorItem);
      }

      @Override
      public void extensionRemoved(LanguageGeneratorNewProjectWizard extension, @NotNull PluginDescriptor pluginDescriptor) {
        myProjectTypeList.removeLanguageGeneratorItem(extension.getName());
      }
    }, context.getDisposable());
  }
private void installLanguageGeneratorWatcher(@NotNull WizardContext context)