 F  charts  
<idea-plugin implementation-detail="true">
  <vendor>JetBrains</vendor>
  <id>intellij.charts</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>Charts Support</name>
  <description><![CDATA[Charts that are required for Data Editor Support plugin]]></description>

  <extensions defaultExtensionNs="com.intellij">
    <applicationService serviceImplementation="com.intellij.bigdatatools.visualization.charts.style.ChartsConfig"/>

    <!--
    <applicationConfigurable parentId="reference.settingsdialog.IDE.editor.colors"
                             instance="com.intellij.bigdatatools.visualization.charts.style.ChartsConfigurable"
                             id="Settings.Inlays.Charts"
                             bundle="messages.Chart" key="chart.settings.dialog.title"/>
    -->

    <!-- Temporary moved to bigdataide-common.xml of Big Data Tools plugin until we will not support all tables. -->
    <!--
    <applicationConfigurable id="Settings.Inlays.Charts"
                             groupId="appearance"
                             groupWeight="98"
                             instance="com.intellij.bigdatatools.visualization.charts.style.ChartsConfigurable"
                             bundle="messages.ChartBundle" key="chart.settings.dialog.title"/>
    -->

    <statistics.counterUsagesCollector
      implementationClass="com.intellij.bigdatatools.visualization.charts.statistics.ChartsUsagesCollector"/>
  </extensions>

  <!-- After switch to lets-plot we don't need this anymore, until UI/UX will decide that we really need extended chart settings -->
  <!--
  <applicationListeners>
    <listener class="com.intellij.bigdatatools.visualization.charts.core.style.ChartLafManagerListener"
              topic="com.intellij.ide.ui.LafManagerListener"
              activeInHeadlessMode="false" activeInTestMode="false"/>
  </applicationListeners>
  -->

  <actions resource-bundle="messages.ChartBundle">

    <group id="Charts.Toolbar.Actions" popup="true">
      <action id="Charts.ShowChartSettings" class="com.intellij.bigdatatools.visualization.charts.actions.ShowChartSettingsAction"
              icon="AllIcons.General.Settings"/>
      <action id="Charts.ExportChartToPng" class="com.intellij.bigdatatools.visualization.charts.actions.ExportChartToPngAction"
              icon="AllIcons.Actions.Download"/>
      <action id="Charts.ShowSeriesSettings" class="com.intellij.bigdatatools.visualization.charts.actions.ShowSeriesSettingsAction"
              icon="AllIcons.General.GearPlain"/>
    </group>

    <group id="LetsPlot.Charts.Toolbar.Actions" popup="true">
      <reference id="Charts.ExportChartToPng"/>
      <reference id="Charts.ShowSeriesSettings"/>
    </group>
  </actions>
</idea-plugin>
 lib/charts.jar  clouds-docker-gateway  +@<idea-plugin package="com.intellij.clouds.docker.gateway" allow-bundled-update="true">
  <name>Dev Containers</name>
  <id>org.jetbrains.plugins.docker.gateway</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <category>Remote Development</category>
  <vendor>JetBrains</vendor>
  <description><![CDATA[
    <h3>Use of Dev Containers</h3>
    <p>Adds support for <a href="https://containers.dev/">Development Containers</a> through the Gateway client for all JetBrains IDE backends.

    <ul>
        <li>Run applications</li>
        <li>Run IDEs and tooling</li>
        <li>Manage appropriate versions of libraries and dependencies</li>
        <li>Configure the runtime required by a specific codebase and project, used in continuous integration and testing.</li>
        <li>Onboard new people quickly</li>
        <li>Utilize remote development capabilities, working with code on a server equipped with Docker and necessary hardware</li>
    </ul>
    <br>
    <p>
        Development containers provide fully functional, reproducible development environments along with an IDE.
        This saves a lot of time, especially during the onboarding of new employees to a project,
        by reducing the amount of documentation that they need to read about setting up a development environment.
        When using a Dev Container, developers do not need to figure out which dependencies are required.
    </p>
    <p>
        When you connect to a Dev Container, your developer experience is the same as when working locally.
        A very fast and efficient Remote Development protocol ensures a smooth connection
        between the IDE server running inside the Dev Container and the lightweight local client.
    </p>

    <h3>How to configure a Dev Container</h3>
    <p>
        The <code>devcontainer.json</code> file in your project instructs the IDE how to create a development
        container with a predefined tool and runtime stack.
    </p>
    <p>Put the <code>devcontainer.json</code> file in the project root or one directory deep:</p>
    <ul>
        <li><code>.devcontainer.json</code></li>
        <li><code>.devcontainer/devcontainer.json</code></li>
        <li><code>.devcontainer/folder/devcontainer.json</code></li>
    </ul>

    <h3>How to build and run a Dev Container</h3>
    <p><a href="https://www.jetbrains.com/help/idea/connect-to-devcontainer.html#start_from_gateway">See official documentation</a></p>

    <h3>Dependencies</h3>
    <p>Requires <i>Docker CLI</i> installed on the local machine.</p>
    <p>
        Remote Development may require some dependencies in the Dev Container,
        such as <code>curl</code>, <code>unzip</code>, <code>ps</code>, <code>libxext</code>,
        <code>libxrender</code>, <code>libxtst</code>, <code>libxi</code>, <code>freetype</code>,
        <code>procps</code>, <code>gcompat</code>. <a href="https://www.jetbrains.com/help/idea/prerequisites-for-dev-containers.html#remote_container">Documentation.</a>
    </p>
    <p>
        If your Dev Container does not start, try installing the missing dependencies in the OS of the Dev Container in devcontainer.json.
        We are working to reduce the number of Remote Development dependencies in future releases.
    </p>
    <p><a href="https://github.com/JetBrains/devcontainers-examples">Repository with Dev Container examples</a></p>
  ]]></description>

  <!--suppress PluginXmlValidity -->
  <change-notes><![CDATA[
  2024.1
    <ul>
      <li>
        Support for Dev Container Templates has been added.
        In projects without Dev Containers, you can create a Dev Container configuration file via the project context menu
        {Project_Name}->New->.devcontainer.json using a template wizard suitable for various software development stacks.
        Additionally, if you create a Dev Container from a VCS project (git repository) through the IDE Welcome Screen or Gateway
        in the Dev Containers section and it lacks a Dev Container configuration file, the Dev Container configuration template
        wizard will be launched. This makes it easier to launch a Dev Container, even if you're doing it for the first time.</li>
      <li>
        Code autocompletion and documentation have been added for Dev Container configuration files.
      </li>
      <li>
        In the IDE Welcome Screen / Gateway, under the Dev Containers section, there is now the ability to create a Dev Container not only
        from a project in a remote git repository (VCS project) but also from a local project.
      </li>
      <li>
        Тhe ability to automatically detect Dev Container configuration files
        in standard locations has been improved: '.devcontainer/devcontainer.json'; '.devcontainer.json';
        '.devcontainer/folder/devcontainer.json' (where folder is a sub-folder, one level deep).
      </li>
      <li>
        When creating a Dev Container from a remote repository (VCS project), the ability to Specify Path of the devcontainer.json file
        has been added, if it is not in the standard location. This allows placing the necessary devcontainer.json files in any folder
        of the project, creating the required workspace environments for different specialists when developing microservice
        applications or working in a monorepo, for example: /infra/devcontainer.json; /dotNetService/devcontainer.json;
        /kotlinService/devcontainer.json; /analytics/devcontainer.json.
      </li>
      <li>
        The building of Dev Containers now operates more reliably and performs correctly in various environments,
        in different combinations (for example, aarch64 client and amd64 server).
      </li>
      <li>
        If a repository contains multiple devcontainer.json files in standard locations, a choice will be
        offered to select which one to use to launch the workspace.
      </li>
      <li>
        Support for the 'remoteUser' and 'waitFor' options has been added.
        The full list of supported options can be found at: <a href="https://youtrack.jetbrains.com/issue/IDEA-321768/Implement-devcontainer.json-specification">IDEA-321768</a>
      </li>
       <li>
        Support for dynamic/static updating of options in the Dev Container.
      </li>
      <li>
      Minimal support for 'customizations' has been added with the option to select an IDE for launching,
      for example: "jetbrains": {"backend": "IntelliJ"}.
      </li>
    </ul>
    2023.3
    <ul>
      <li>General properties (besides otherPortAttributes, remoteUser, updateRemoteUserUID, userEnvProbe, customizations)</li>
      <li>Build properties</li>
      <li>Docker Compose</li>
      <li>Lifecycle scripts (besides waitFor)</li>
      <li>Port attributes (only label supported)</li>
      <li>Minimum host requirements is not supported in this version</li>
      <li>Variables in devcontainer.json</li>
    </ul>
    ]]>
  </change-notes>

  <content>
    <module name="intellij.clouds.docker.gateway/forwardPorts"/>
    <module name="intellij.clouds.docker.gateway/json"/>
    <module name="intellij.clouds.docker.gateway.git4idea"/>
  </content>

  <dependencies>
    <plugin id="Docker"/>
    <plugin id="com.jetbrains.gateway"/>
  </dependencies>

  <resource-bundle>messages.DockerGatewayBundle</resource-bundle>

  <extensions defaultExtensionNs="com.jetbrains">
    <gatewayConnector implementation="com.intellij.clouds.docker.gateway.DockerGatewayConnector"/>
  </extensions>

  <extensions defaultExtensionNs="com.intellij">
    <registryKey defaultValue="alpine/git:latest"
                 description="Image tag for the auxiliary container. It should include 'git' and 'openssh-client'."
                 key="devcontainers.git.clone.helper"/>
    <!-- See com.intellij.clouds.docker.gateway.utils.HelperImage -->
    <registryKey defaultValue="alpine/git:v2.34.2"
                 description="Image tag for the auxiliary container. This image tag serves as a workaround for the incompatibility between OpenSSH versions on Windows when the ssh-agent runs with version less than or equal to 8.8, and the SSH client (on any platform) runs version greater than or equal to 8.9. It should include 'git' and 'openssh-client' with version less than or equal to 8.8."
                 key="devcontainers.git.clone.helper.legacy"/>
    <registryKey defaultValue="jetbrains/devcontainers-helper:20231115"
                 description="Image tag for the auxiliary container. Should include 'curl' and 'unzip'."
                 key="devcontainers.download.backends.helper"/>
    <registryKey defaultValue="busybox:latest" description="Image tag for the auxiliary container. It should include 'sh'"
                 key="devcontainers.perform.command.on.volume.helper"/>

    <registryKey defaultValue="false" description="Use separate project panel for configuration"
                 key="devcontainers.use.separate.project.panel"/>

    <advancedSetting default="true" bundle="messages.DockerGatewayBundle" id="dev.containers.fast.clone"
                     groupKey="advanced.settings.dev.containers"/>

    <projectService serviceImplementation="com.intellij.clouds.docker.gateway.host.DockerDevcontainerHostInitializer"
                    client="remote"/>
    <runLineMarkerContributor implementationClass="com.intellij.clouds.docker.gateway.ui.DockerDevcontainersRunLineMarkerContributor"
                              language="JSON"/>
    <statistics.counterUsagesCollector
      implementationClass="com.intellij.clouds.docker.gateway.statistics.GatewayDevcontainersUsagesCollector"/>
    <applicationInitializedListener implementation="com.intellij.clouds.docker.gateway.ideSettings.DevcontainerIdeSettingsInitializer"/>
  </extensions>

  <actions>
    <group icon="com.intellij.clouds.docker.gateway.DockerGatewayIcons.DevContainers" id="Dev.Container.Actions" popup="true"
           class="com.intellij.clouds.docker.gateway.actions.DevcontainerActionsGroup">
      <action id="Create.Dev.Container.CloneSources"
              class="com.intellij.clouds.docker.gateway.actions.DevcontainerCreateWithGitClone"/>
      <group id="Create.Dev.Container.MountSources"
             class="com.intellij.clouds.docker.gateway.actions.DevcontainerCreateWithMountedSourcesGroup"/>
      <separator/>
      <action id="Dev.Container.ManageBackends"
              class="com.intellij.clouds.docker.gateway.actions.ManageDevcontainerBackendsAction"/>
      <action id="Dev.Container.ShowRecent"
              class="com.intellij.clouds.docker.gateway.actions.ShowRecentDevcontainersAction"/>
      <add-to-group group-id="ProjectViewPopupMenu"/>
      <add-to-group group-id="EditorPopupMenu"/>
    </group>
    <action id="com.intellij.clouds.docker.gateway.actions.NewDevcontainerAction"
            class="com.intellij.clouds.docker.gateway.actions.NewDevcontainerAction">
      <add-to-group group-id="NewGroup" anchor="after" relative-to-action="NewDockerfile"/>
    </action>
  </actions>
</idea-plugin>
 lib/clouds-docker-gateway.jar  clouds-docker-impl  Y<idea-plugin package="com.intellij.docker">
  <name>Docker</name>
  <id>Docker</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>

  <content>
    <module name="intellij.clouds.docker.java"/>
    <module name="intellij.clouds.docker.compose"/>
    <module name="intellij.clouds.docker.file"/>
    <module name="intellij.clouds.docker.remoteRun"/>
    <module name="intellij.clouds.docker.ssh"/>
    <module name="intellij.clouds.docker.kubernetes"/>
  </content>

  <dependencies>
    <plugin id="com.intellij.modules.lang"/>
    <plugin id="com.intellij.modules.remoteServers"/>
  </dependencies>

  <vendor>JetBrains</vendor>
  <category>Deployment</category>
  <description>
    <![CDATA[
Provides integration with <a href="https://www.docker.com/">Docker</a>.
<ul><li>Download and build Docker images</li>
<li>Create and run Docker containers from pulled images or directly from a Dockerfile</li>
<li>Use dedicated Docker run configurations</li>
<li>Run multicontainer applications using Docker Compose</li></ul>

To configure, open <b>Settings | Build, Execution, Deployment | Docker</b>.
<p>
<a href="https://www.jetbrains.com/help/idea/docker.html">Documentation</a>]]>
  </description>
  <resource-bundle>messages.DockerBundle</resource-bundle>

  <extensions defaultExtensionNs="com.intellij">
    <remoteServer.type implementation="com.intellij.docker.DockerCloudType"/>

    <advancedSetting default="true" bundle="messages.DockerBundle" id="docker.connect.automatically" groupKey="advanced.settings.docker"/>
    <advancedSetting default="100" bundle="messages.DockerBundle" id="docker.registry.loading.limit" groupKey="advanced.settings.docker"/>
    <advancedSetting default="true" id="docker.container.log.is.first.tab" groupKey="advanced.settings.docker"/>
    <advancedSetting default="3000" trailingLabelKey="docker.periodical.check.delay.milliseconds" bundle="messages.DockerBundle"
                     id="docker.periodical.check.delay"
                     groupKey="advanced.settings.docker"/>

    <advancedSetting id="docker.selinux.label.volumes" groupKey="advanced.settings.docker" default="false"/>

    <editorActionHandler action="EditorCopy" implementationClass="com.intellij.docker.editorActions.copy.DockerCopyActionHandler"/>

    <remoteServer.deploymentSource.type implementation="com.intellij.docker.deploymentSource.DockerImageDeploymentSourceType"/>
    <remoteServer.deploymentSource.type implementation="com.intellij.docker.deploymentSource.DockerFileDeploymentSourceType"/>
    <remoteServer.deploymentSource.type implementation="com.intellij.docker.deploymentSource.DockerComposeDeploymentSourceType"/>

    <applicationService serviceImplementation="com.intellij.docker.registry.DockerRegistryManager"/>
    <applicationService serviceImplementation="com.intellij.docker.view.DockerTreeFilter"/>
    <applicationConfigurable groupId="build" id="Docker"
                             bundle="messages.DockerBundle"
                             key="configurable.DockerRemoteServerConfigurable.display.name"
                             instance="com.intellij.docker.settings.DockerConnectionsListConfigurable"/>
    <applicationConfigurable parentId="Docker"
                             bundle="messages.DockerBundle"
                             key="configurable.DockerRegistryListConfigurable.display.name"
                             id="DockerRegistry"
                             instance="com.intellij.docker.registry.DockerRegistryListConfigurable"/>

    <webHelpProvider implementation="com.intellij.docker.help.DockerWebHelpProvider"/>

    <applicationService serviceImplementation="com.intellij.docker.DockerSettings"/>
    <applicationConfigurable parentId="Docker" instance="com.intellij.docker.settings.DockerToolsConfigurable"
                             id="reference.settingsDialog.application.dockerMachine" key="dockerTools.name"
                             bundle="messages.DockerBundle"/>
    <applicationConfigurable parentId="Docker" instance="com.intellij.docker.settings.DockerConsoleConfigurable"
                             id="reference.settingsDialog.application.dockerConsole" key="dockerConsole.name"
                             bundle="messages.DockerBundle"/>

    <project.converterProvider implementation="com.intellij.docker.conversion.DockerRunConfigurationConverterProvider"
                               id="DockerRunConfigurationConverterProvider"/>

    <serviceViewContributor implementation="com.intellij.docker.view.DockerMainServiceViewContributor"/>
    <serviceViewContributor implementation="com.intellij.docker.view.registry.DockerRegistryServiceViewContributor"/>

    <applicationService serviceImplementation="com.intellij.docker.compose.ComposeFilesSynchronizedWithServiceView"/>

    <docker.runConfiguration.pathHandler
      implementation="com.intellij.docker.deployment.DockerRunConfigurationPathHandler$MainSourceFile"/>
    <docker.runConfiguration.pathHandler
      implementation="com.intellij.docker.deployment.DockerRunConfigurationPathHandler$SecondaryComposeFiles"/>
    <docker.runConfiguration.pathHandler
      implementation="com.intellij.docker.deployment.DockerRunConfigurationPathHandler$BindMounts"/>

    <docker.registry.provider implementation="com.intellij.docker.view.registry.DockerHubRegistryProvider"/>
    <docker.registry.provider implementation="com.intellij.docker.view.registry.DockerGitlabRegistryProvider"/>
    <docker.registry.provider implementation="com.intellij.docker.view.registry.DockerSpaceRegistryProvider"/>
    <!-- Should be always last loaded registry providers -->
    <docker.registry.provider implementation="com.intellij.docker.view.registry.DockerV2RegistryProvider"
                              order="before dummyRegistryProvider"/>
    <docker.registry.provider id="dummyRegistryProvider" implementation="com.intellij.docker.view.registry.DockerDummyRegistryProvider"
                              order="last"/>

    <completion.contributor language="any" implementationClass="com.intellij.docker.image.DockerImageCompletionContributor"/>

    <docker.image.completion.provider implementation="com.intellij.docker.image.DockerDefaultImageSearchResultProvider" order="first"/>
    <docker.image.completion.provider implementation="com.intellij.docker.registry.DockerRegistryImageSearchResultProvider"/>
    <docker.image.completion.provider implementation="com.intellij.docker.image.DockerLocalImageSearchResultProvider"/>

    <intentionAction>
      <className>com.intellij.docker.image.DockerPullIntention</className>
      <skipBeforeAfter>true</skipBeforeAfter>
      <bundleName>messages.DockerBundle</bundleName>
      <categoryKey>docker.intention.category</categoryKey>
    </intentionAction>

    <scratch.rootType implementation="com.intellij.docker.DockerRootType"/>
    <navbar implementation="com.intellij.docker.view.DockerNavBarModelExtension"/>
    <writingAccessProvider implementation="com.intellij.docker.vfs.DockerWritingAccessProvider"/>

    <programRunner implementation="com.intellij.docker.before.DockerBeforeRunRunner" order="before DeployToServer"/>
    <runConfigurationBeforeRunProviderDelegate implementation="com.intellij.docker.before.DockerBeforeRunEnabler"/>

    <notificationGroup id="Docker: Debug" displayType="TOOL_WINDOW" toolWindowId="Debug"
                       bundle="messages.DockerBundle" key="DockerFileDetector.notification.group"/>
    <notificationGroup id="Docker" displayType="BALLOON"
                       bundle="messages.DockerBundle" key="RegistryRuntimeTask.notification.group"/>
    <notificationGroup id="docker-compose" displayType="BALLOON"
                       bundle="messages.DockerBundle" key="ComposeApplicationRuntime.notification.group"/>

    <docker.connection.configurator id="defaultConnectionConfigurator" order="first"
                                    implementation="com.intellij.docker.connection.DockerDefaultConnectionConfigurator"/>
    <docker.connection.configurator id="tcpConnectionConfigurator"
                                    order="after defaultConnectionConfigurator"
                                    implementation="com.intellij.docker.connection.DockerTcpConnectionConfigurator"/>
    <docker.connection.configurator implementation="com.intellij.docker.connection.MinikubeConnectionConfigurator"/>
    <docker.connection.configurator implementation="com.intellij.docker.connection.DockerColimaConnectionConfigurator"/>
    <docker.connection.configurator implementation="com.intellij.docker.connection.DockerWslConnectionConfigurator"/>

    <registryKey defaultValue="true" description="Enables saving documents with any modality"
                 key="docker.compose.use.modality.any.for.saving.documents"/>

    <remoteServer.deploymentConfiguration.stateProvider
      implementation="com.intellij.docker.runtimes.deploy.DockerDeployToServerStateProvider"/>

    <spellchecker.bundledDictionaryProvider implementation="com.intellij.docker.DockerDictionaryProvider"/>

    <docker.pull.intention.helper implementation="com.intellij.docker.image.DefaultDockerPullIntentionHelper"/>
    <iconMapper mappingFile="DockerIconMappings.json"/>

    <internalFileTemplate name="Dockerfile"/>

    <statistics.applicationUsagesCollector implementation="com.intellij.docker.settings.DockerConnectionUsagesCollector"/>
    <statistics.applicationUsagesCollector implementation="com.intellij.docker.settings.CloudEnvironmentUsagesCollector"/>
    <statistics.projectUsagesCollector implementation="com.intellij.docker.settings.DevcontainersUsagesCollector"/>

    <dependencySupport kind="executable" coordinate="docker"/>
    <dependencySupport kind="executable" coordinate="podman"/>
  </extensions>

  <extensionPoints>
    <extensionPoint qualifiedName="com.intellij.docker.pull.intention.helper"
                    interface="com.intellij.docker.image.DockerPullIntentionHelper"
                    dynamic="true"/>
    <extensionPoint qualifiedName="com.intellij.docker.runConfiguration.pathHandler"
                    interface="com.intellij.docker.deployment.DockerRunConfigurationPathHandler"
                    dynamic="true"/>
    <extensionPoint qualifiedName="com.intellij.docker.registry.provider"
                    interface="com.intellij.docker.view.registry.DockerRegistryProvider"
                    dynamic="true"/>
    <extensionPoint qualifiedName="com.intellij.docker.image.completion.provider"
                    interface="com.intellij.docker.image.DockerImageSearchResultProvider"
                    dynamic="true"/>
  </extensionPoints>

  <projectListeners>
    <listener class="com.intellij.docker.deployment.DockerRunConfigurationManager$RunManagerListenerImpl"
              topic="com.intellij.execution.RunManagerListener"/>
    <listener class="com.intellij.docker.view.DockerToolWindowManagerListener"
              topic="com.intellij.openapi.wm.ex.ToolWindowManagerListener"/>
  </projectListeners>

  <applicationListeners>
    <listener class="com.intellij.docker.DockerDynamicPluginListener" topic="com.intellij.ide.plugins.DynamicPluginListener"/>
    <listener class="com.intellij.docker.view.registry.DockerRegistryManagerListener"
              topic="com.intellij.docker.registry.DockerRegistryManager$Listener"/>
  </applicationListeners>

  <extensionPoints>
    <extensionPoint qualifiedName="com.intellij.remoteServer.debug.runConfigurationAdapter"
                    interface="com.intellij.docker.remoteDebug.RemoteServerRequestAdapterFactory"
                    dynamic="true"/>
    <extensionPoint qualifiedName="com.intellij.docker.connection.configurator"
                    interface="com.intellij.docker.connection.DockerConnectionConfigurator"
                    dynamic="true"/>
  </extensionPoints>

  <actions>
    <group id="Docker.RemoteServersViewToolbar" class="com.intellij.ide.actions.NonTrivialActionGroup">
      <action id="Docker.RemoteServers.ConnectServer"
              class="com.intellij.docker.action.DockerConnectAction"
              icon="AllIcons.Actions.Execute" use-shortcut-of="Docker.RemoteServers.StartComposeService">
      </action>
      <action id="Docker.RemoteServer.DisconnectServer"
              class="com.intellij.docker.action.DockerDisconnectAction"
              icon="AllIcons.Actions.Suspend"/>
      <reference ref="RemoteServers.EditServerConfig"/>
      <reference ref="RemoteServers.ChooseServerDeployment"/>

      <action id="Docker.RemoteServers.StopDeploy" class="com.intellij.docker.action.StopDeployAction"
              icon="AllIcons.Actions.Suspend" use-shortcut-of="Stop">
        <add-to-group group-id="RunDashboardContentToolbar" anchor="last"/>
      </action>

      <action id="Docker.RemoteServers.CreateVolume"
              icon="AllIcons.General.Add"
              class="com.intellij.docker.action.volumes.CreateVolumeAction"/>

      <action id="Docker.RemoteServers.CreateNetwork"
              icon="AllIcons.General.Add"
              class="com.intellij.docker.action.networks.CreateNetworkAction"/>

      <action id="Docker.RemoteServers.StartAllComposeApp" class="com.intellij.docker.action.compose.ComposeStartAllServicesAction"
              icon="AllIcons.Actions.RunAll" use-shortcut-of="Docker.RemoteServers.StartComposeService"/>
      <group id="Docker.RemoteServers.ComposeUp" class="com.intellij.docker.action.compose.ComposeUpAction"/>
      <action id="Docker.RemoteServers.RestartComposeApp" class="com.intellij.docker.action.compose.ComposeRestartServicesAction"
              icon="AllIcons.Actions.Restart"/>
      <action id="Docker.RemoteServers.RemoveOrphans" class="com.intellij.docker.action.compose.ComposeRemoveOrphansAction"
              icon="AllIcons.Actions.GC"/>
      <action id="Docker.RemoteServers.StopComposeApp" class="com.intellij.docker.action.compose.ComposeAllStopAction"
              icon="AllIcons.Actions.Suspend" use-shortcut-of="Stop"/>
      <action id="Docker.RemoteServers.DownComposeApp" class="com.intellij.docker.action.compose.ComposeAllDownAction"
              icon="AllIcons.Nodes.Undeploy"/>

      <action id="Docker.RemoteServers.Redeploy"
              icon="AllIcons.Nodes.Deploy"
              class="com.intellij.docker.action.RedeployRuntimeAction" use-shortcut-of="Servers.Deploy"/>
      <reference ref="RemoteServers.EditDeploymentConfig"/>

      <action id="Docker.RemoteServers.EditServerConfig" class="com.intellij.docker.action.DockerServerEditConfigurationAction"
              icon="AllIcons.Actions.EditSource"
              use-shortcut-of="EditSourceInNewWindow"/>
      <action id="Docker.RemoteServers.EditDeploymentConfig" class="com.intellij.docker.action.DockerDeploymentEditConfigurationAction"
              icon="AllIcons.Actions.EditSource"/>
      <action id="Docker.RemoteServers.StartContainer" class="com.intellij.docker.action.containers.StartContainerAction"
              icon="AllIcons.Actions.Execute" use-shortcut-of="Docker.RemoteServers.StartComposeService"/>
      <action id="Docker.RemoteServers.RestartContainer" class="com.intellij.docker.action.containers.RestartContainerAction"
              icon="AllIcons.Actions.Restart" use-shortcut-of="Docker.RemoteServers.RestartComposeApp"/>
      <action id="Docker.RemoteServers.PauseContainer" icon="AllIcons.Actions.Pause"
              class="com.intellij.docker.action.containers.PauseContainerAction"/>
      <action id="Docker.RemoteServers.UnpauseContainer" icon="AllIcons.Actions.Execute"
              class="com.intellij.docker.action.containers.UnpauseContainerAction"/>
      <action id="Docker.RemoteServers.StopContainer" class="com.intellij.docker.action.containers.StopContainerAction"
              icon="AllIcons.Actions.Suspend" use-shortcut-of="Stop"/>
      <action id="Docker.RemoteServers.DeleteContainer" class="com.intellij.docker.action.containers.DeleteContainerAction"
              icon="AllIcons.General.Remove"/>
      <action id="Docker.RemoteServers.DeleteFailedNode" class="com.intellij.docker.action.DeleteFailedNodeAction"
              icon="AllIcons.General.Remove"/>
      <action id="Docker.RemoteServers.DeleteConnection" class="com.intellij.docker.action.DeleteConnectionAction"
              icon="AllIcons.General.Remove"/>
      <action id="Docker.RemoteServers.CreateContainer" class="com.intellij.docker.action.images.CreateContainerAction"
              icon="AllIcons.General.Add"/>
      <action id="Docker.RemoteServers.DeleteImage" class="com.intellij.docker.action.images.DeleteImageAction"
              icon="AllIcons.General.Remove"/>
      <action id="Docker.RemoteServers.DeleteVolume" class="com.intellij.docker.action.volumes.DeleteVolumeAction"
              icon="AllIcons.General.Remove"/>
      <action id="Docker.RemoteServers.DeleteNetwork" class="com.intellij.docker.action.networks.DeleteNetworkAction"
              icon="AllIcons.General.Remove"/>

      <action id="Docker.RemoteServers.TransferImage"
              class="com.intellij.docker.action.images.DockerTransferImageAction"
              icon="AllIcons.Vcs.Push"/>
      <action id="Docker.RemoteServers.PushImage" class="com.intellij.docker.action.images.PushImageAction"
              icon="com.intellij.docker.DockerIcons.PushImage"/>
      <action id="Docker.RemoteServers.PullImage" class="com.intellij.docker.action.images.PullImageAction"
              icon="com.intellij.docker.DockerIcons.PullImage"/>

      <action id="Docker.RemoteServers.ShowImageLayers" class="com.intellij.docker.action.images.DockerShowImageLayersAction"
              icon="AllIcons.Debugger.ShowCurrentFrame"/>

      <action id="Docker.RemoteServers.Prune" class="com.intellij.docker.action.PruneAction"
              icon="AllIcons.Actions.GC"/>

      <action id="Docker.RemoteServers.StartComposeService" class="com.intellij.docker.action.compose.ComposeStartAction"
              icon="AllIcons.Actions.Execute">
        <keyboard-shortcut first-keystroke="control ENTER" keymap="$default"/>
      </action>
      <action id="Docker.RemoteServers.StopComposeService" class="com.intellij.docker.action.compose.ComposeStopAction"
              icon="AllIcons.Actions.Suspend" use-shortcut-of="Stop"/>

      <action id="Docker.RemoteServers.DeleteService" class="com.intellij.docker.action.compose.ComposeDeleteServiceAction"
              icon="AllIcons.General.Remove"/>
      <action id="Docker.RemoteServers.ScaleComposeService" class="com.intellij.docker.action.compose.ComposeScaleAction"
              icon="AllIcons.Actions.Expandall"/>
    </group>

    <group id="Docker.RemoteServersViewPopup">
      <group id="Docker.RemoteServersViewPopup.Image" class="com.intellij.docker.action.containers.ContainerActionsGroup" popup="true">
        <action id="Docker.RemoteServers.SelectContainerImage" class="com.intellij.docker.action.containers.SelectContainerImageAction"/>
        <action id="Docker.RemoteServers.CommitContainer" class="com.intellij.docker.action.containers.CommitContainerAction"/>
      </group>
      <action id="Docker.RemoteServers.ShowContainerFiles" class="com.intellij.docker.action.containers.ShowFilesAction"/>
      <action id="Docker.RemoteServers.CopyImageId" icon="AllIcons.Actions.Copy"
              class="com.intellij.docker.action.images.CopyImageIdAction"/>
      <action id="Docker.RemoteServers.CopyContainerId" icon="AllIcons.Actions.Copy"
              class="com.intellij.docker.action.containers.CopyContainerIdAction"/>
      <action id="Docker.RemoteServers.CopyContainerImageId" icon="AllIcons.Actions.Copy"
              class="com.intellij.docker.action.containers.CopyContainerImageIdAction"/>
      <action id="Docker.RemoteServers.InspectContainerOrImage" icon="AllIcons.Actions.Find"
              class="com.intellij.docker.action.InspectDockerAction"/>
      <action id="Docker.RemoteServers.ShowContainerProcesses" class="com.intellij.docker.action.containers.ShowContainerProcessesAction"/>
      <action id="Docker.RemoteServers.Attach2Container" class="com.intellij.docker.action.containers.AttachToContainerAction"/>
      <action id="Docker.RemoteServers.ExecInContainer" class="com.intellij.docker.action.containers.ExecInContainerAction"/>
      <action id="Docker.RemoteServers.CreateTerminal" class="com.intellij.docker.action.containers.CreateTerminalAction"
              icon="AllIcons.Nodes.Console"/>
      <separator/>
    </group>

    <group id="Docker.RemoteServersViewToolbar.Top"/>
    <group id="Docker.RegistryViewToolbar"/>

    <group id="Docker.Filter" popup="true" class="com.intellij.docker.action.DockerFilterActionGroup">
      <separator key="separator.Docker.Filter"/>
      <action id="Docker.FilterStoppedContainers"
              class="com.intellij.docker.action.DockerFilterActionGroup$FilterStoppedContainersAction"/>
      <action id="Docker.FilterUntaggedImages"
              class="com.intellij.docker.action.DockerFilterActionGroup$FilterUntaggedImagesAction"/>
      <add-to-group group-id="ServiceView.ViewOptions"/>
    </group>
    <group id="Docker.Services.Add" icon="com.intellij.docker.DockerIcons.Docker" popup="true" compact="true">
      <add-to-group group-id="ToolsMenu.Services"/>
      <add-to-group group-id="ServiceView.AddService"/>

      <action id="Docker.AddDockerConnection" class="com.intellij.docker.action.AddDockerConnectionAction"/>
      <action id="Docker.ImportContexts" class="com.intellij.docker.action.ImportDockerConnectionsFromContextsAction"/>
    </group>
    <action id="Docker.AddDockerRegistry" icon="com.intellij.docker.DockerIcons.Docker_toolwin"
            class="com.intellij.docker.action.registry.AddDockerRegistryAction">
      <add-to-group group-id="ToolsMenu.Services"/>
      <add-to-group group-id="ServiceView.AddService"/>
    </action>
    <action icon="AllIcons.Actions.Refresh" id="Docker.RegistryRefreshAction"
            class="com.intellij.docker.action.registry.DockerRegistryRefreshAction">
      <add-to-group group-id="Docker.RegistryViewToolbar"/>
    </action>
    <action id="Docker.RegistryPullAction" icon="com.intellij.docker.DockerIcons.PullImage"
            class="com.intellij.docker.action.registry.DockerRegistryPullAction">
      <add-to-group group-id="Docker.RegistryViewToolbar"/>
    </action>
    <action id="Docker.EditRegistryConfigAction" icon="AllIcons.Actions.Edit"
            class="com.intellij.docker.action.registry.DockerRegistryEditConfigurationAction">
      <add-to-group group-id="Docker.RegistryViewToolbar"/>
    </action>

    <!--suppress PluginXmlCapitalization -->
    <action id="NewDockerfile"
            class="com.intellij.docker.action.NewDockerfileAction"
            icon="com.intellij.docker.DockerIcons.DockerFile_1">
      <add-to-group group-id="NewGroup" anchor="after" relative-to-action="NewWebDevelopment"/>
    </action>
  </actions>
</idea-plugin> lib/clouds-docker-impl.jar  color-scheme-colorful-darcula  R<idea-plugin>
  <name>Colorful Darcula Color Scheme</name>
  <id>com.intellij.plugins.colorful.darcula.colorscheme</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <vendor>JetBrains</vendor>
  <category>UI</category>
  <depends>com.intellij.modules.lang</depends>
  <description>
    Colorful Darcula editor color scheme for all IntelliJ-based IDEs.
  </description>
  <extensions defaultExtensionNs="com.intellij">
    <bundledColorScheme id="Colorful Darcula" path="colorscheme/Colorful Darcula"/>
  </extensions>
</idea-plugin> %lib/color-scheme-colorful-darcula.jar  color-scheme-monokai  '<idea-plugin>
  <name>Monokai Color Scheme</name>
  <id>com.intellij.plugins.monokai.colorscheme</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <vendor>JetBrains</vendor>
  <category>UI</category>
  <depends>com.intellij.modules.lang</depends>
  <description>
    Monokai editor color scheme for all IntelliJ-based IDEs.
  </description>
  <extensions defaultExtensionNs="com.intellij">
    <bundledColorScheme id="Monokai" path="/colorSchemes/monokai"/>
  </extensions>
</idea-plugin> lib/color-scheme-monokai.jar  color-scheme-solarized-goland  <idea-plugin>
  <name>GoLand Solarized Color Scheme</name>
  <id>com.intellij.plugins.goland.solarized.colorscheme</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <vendor>JetBrains</vendor>
  <category>UI</category>
  <depends>com.intellij.modules.lang</depends>
  <description>
    Solarized editor color scheme for GoLand.
  </description>
  <extensions defaultExtensionNs="com.intellij">
    <bundledColorScheme id="Solarized (dark)" path="/colorSchemes/Solarized Dark"/>
    <bundledColorScheme id="Solarized (light)" path="/colorSchemes/Solarized Light"/>
  </extensions>
</idea-plugin> %lib/color-scheme-solarized-goland.jar  completionMlRanking  !<idea-plugin package="com.intellij.completion.ml">
  <id>com.intellij.completion.ml.ranking</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>Machine Learning Code Completion</name>
  <vendor>JetBrains</vendor>
  <category>Local AI/ML Tools</category>

  <description><![CDATA[
      <p>The plugin improves code completion feature by reordering of elements in the completion
      popup by ranking more relevant items higher using machine learning.
      </p>
      <br>
      <p>To enable the feature for your programming language, check settings in
      Editor | General | Code Completion | "Machine Learning Assistant Code Completion" section.</p>
    ]]></description>

  <dependencies>
    <plugin id="com.intellij.modules.lang"/>
  </dependencies>

  <extensionPoints>
    <extensionPoint name="features.policy" beanClass="com.intellij.lang.LanguageExtensionPoint" dynamic="true">
      <with attribute="implementationClass" implements="com.intellij.completion.ml.features.CompletionFeaturesPolicy"/>
    </extensionPoint>

    <extensionPoint name="policy" beanClass="com.intellij.lang.LanguageExtensionPoint" dynamic="true">
      <with attribute="implementationClass" implements="com.intellij.completion.ml.CompletionMLPolicy"/>
    </extensionPoint>

    <extensionPoint qualifiedName="com.intellij.completion.ml.lookupFeatures" beanClass="com.intellij.lang.LanguageExtensionPoint" dynamic="true">
      <with attribute="implementationClass" implements="com.intellij.completion.ml.sorting.LookupFeatureProvider"/>
    </extensionPoint>

    <extensionPoint qualifiedName="com.intellij.completion.ml.additionalContextFeatures" beanClass="com.intellij.lang.LanguageExtensionPoint" dynamic="true">
      <with attribute="implementationClass" implements="com.intellij.completion.ml.sorting.AdditionalContextFeatureProvider"/>
    </extensionPoint>

    <extensionPoint qualifiedName="com.intellij.completion.ml.elementIdProvider" dynamic="true" interface="com.intellij.completion.ml.util.LookupElementIdProvider" />

    <extensionPoint qualifiedName="com.intellij.completion.ml.localModelProvider" dynamic="true" interface="com.intellij.completion.ml.ranker.local.LocalZipModelProvider" />

    <extensionPoint qualifiedName="com.intellij.completion.ml.featuresOverride" beanClass="com.intellij.lang.LanguageExtensionPoint" dynamic="true">
      <with attribute="implementationClass" implements="com.intellij.completion.ml.features.RankingFeaturesOverrides"/>
    </extensionPoint>
  </extensionPoints>

  <resource-bundle>messages.MlCompletionBundle</resource-bundle>

  <actions>
    <action id="DumpMLCompletionFeatures"
            class="com.intellij.completion.ml.actions.MLCompletionFeaturesUtil$CopyFeaturesToClipboard">
      <keyboard-shortcut keymap="$default" first-keystroke="ctrl shift alt 9"/>
      <add-to-group group-id="MaintenanceGroup" anchor="before" relative-to-action="DumpLookupElementWeights"/>
    </action>
    <action id="DumpMLExperimentGroups"
            class="com.intellij.completion.ml.actions.DumpMLExperimentsGroupsAction"
            internal="true">
      <add-to-group group-id="MaintenanceGroup" anchor="after" relative-to-action="DumpMLCompletionFeatures"/>
    </action>
  </actions>

  <extensions defaultExtensionNs="com.intellij">
    <applicationService serviceImplementation="com.intellij.completion.ml.settings.CompletionMLRankingSettings"/>

    <applicationService serviceInterface="com.intellij.codeInsight.completion.CompletionFinalSorter$Factory"
                        serviceImplementation="com.intellij.completion.ml.sorting.MLSorterFactory"/>

    <mlCodeCompletionConfigurable provider="com.intellij.completion.ml.settings.MLRankingConfigurableProvider"/>

    <applicationService serviceImplementation="com.intellij.completion.ml.personalization.impl.ApplicationUserFactorStorage"/>

    <applicationService serviceInterface="com.intellij.completion.ml.personalization.UserFactorsManager"
                        serviceImplementation="com.intellij.completion.ml.personalization.impl.UserFactorsManagerImpl"/>

    <applicationService serviceInterface="com.intellij.completion.ml.experiment.ExperimentStatus"
                        serviceImplementation="com.intellij.completion.ml.experiment.ClientExperimentStatus"
                        preload="true"/>

    <projectService serviceImplementation="com.intellij.completion.ml.common.CurrentProjectInfo"/>

    <weigher key="completion" id="ml_weigh" implementationClass="com.intellij.completion.ml.features.MLCompletionWeigher" order="last"/>
    <completion.contributor language="any" order="first" id="ml_context"
                            implementationClass="com.intellij.completion.ml.sorting.ContextFeaturesContributor"/>

    <registryKey key="completion.ml.reorder.only.top.items" defaultValue="true"
                 description="Reorder only a few items on the top in the lookup to preserve a proper grouping for the items below"/>

    <registryKey key="completion.ml.reorder.without.duplicates" defaultValue="false"
                 description="Reorder only items with different names"/>

    <registryKey key="completion.ml.show.star.notification" defaultValue="true"
                 description="Show notification with question about ML completion arrows"/>

    <registryKey key="completion.ml.enable.session.factors" defaultValue="true"
                 description="Use inside single session factors"/>

    <registryKey key="completion.ml.override.experiment.group.number" defaultValue="-1" restartRequired="true"
                 description="Set experiment bucket number. If value is negative, will be skipped."/>

    <registryKey key="completion.ml.path.to.zip.model" defaultValue="no path"
                 description="Path to load ml completion model from zip"/>

    <completion.ml.contextFeatures language="" implementationClass="com.intellij.codeInsight.completion.ml.VcsContextFeatureProvider"/>
    <completion.ml.contextFeatures language="" implementationClass="com.intellij.completion.ml.common.CommonLocationFeatures"/>
    <completion.ml.elementFeatures language="" implementationClass="com.intellij.completion.ml.common.CommonElementLocationFeatures"/>

    <completion.ml.elementFeatures language="" implementationClass="com.intellij.completion.ml.ngram.NGramFeatureProvider"/>
    <completion.ml.elementFeatures language="" implementationClass="com.intellij.completion.ml.common.ContextSimilarityFeatures"/>
    <completion.ml.elementFeatures language="" implementationClass="com.intellij.completion.ml.common.RecentPlacesFeatures"/>
    <completion.ml.elementFeatures language="" implementationClass="com.intellij.codeInsight.completion.ml.VcsFeatureProvider"/>
    <completion.ml.elementFeatures language="" implementationClass="com.intellij.completion.ml.templates.LiveTemplateUsageFeatureProvider"/>

    <lookup.usageDetails implementation="com.intellij.completion.ml.features.MLRankingLookupUsageDescriptor"/>
    <statistics.collectorExtension implementation="com.intellij.completion.ml.features.MLRankingLookupUsageDescriptor$MLRankingCompletionCollectorExtension"/>


    <statistics.validation.customValidationRule
      implementation="com.intellij.completion.ml.settings.MLCompletionSettingsCollector$MLRankingSettingsValidationRule"/>
    <statistics.counterUsagesCollector implementationClass="com.intellij.completion.ml.settings.MLCompletionSettingsCollector"/>
    <completion.ml.localModelProvider implementation="com.intellij.completion.ml.ranker.local.randomforest.LocalRandomForestProvider" />
    <completion.ml.localModelProvider implementation="com.intellij.completion.ml.ranker.local.catboost.LocalCatBoostModelProvider" />
  </extensions>

  <projectListeners>
    <listener class="com.intellij.completion.ml.common.RecentPlacesFeatures$StoreRecentPlacesListener"
              topic="com.intellij.openapi.fileEditor.impl.IdeDocumentHistoryImpl$RecentPlacesListener"/>
    <listener class="com.intellij.completion.ml.tracker.CompletionFactorsInitializer"
              topic="com.intellij.codeInsight.lookup.LookupManagerListener" />
    <listener class="com.intellij.completion.ml.sorting.ItemsDecoratorInitializer"
              topic="com.intellij.codeInsight.lookup.LookupManagerListener"
              activeInTestMode="false"/>
    <listener class="com.intellij.completion.ml.ngram.NGramFileListener"
              topic="com.intellij.openapi.fileEditor.FileEditorManagerListener$Before"/>
  </projectListeners>
</idea-plugin> lib/completionMlRanking.jar  configurationScript  <idea-plugin implementation-detail="true" package="com.intellij.configurationScript">
  <name>Configuration Script</name>
  <id>com.intellij.configurationScript</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <vendor>JetBrains</vendor>
  <description><![CDATA[
  <p>Supports configuring the IDE using text files (YAML, JSON). Experimental.</p>
  ]]>
  </description>
  <vendor>JetBrains</vendor>

  <extensions defaultExtensionNs="JavaScript.JsonSchema">
    <ProviderFactory implementation="com.intellij.configurationScript.IntellijConfigurationJsonSchemaProviderFactory"/>
  </extensions>
  <extensions defaultExtensionNs="com.intellij">
    <projectService serviceInterface="com.intellij.profile.codeInspection.InspectionProjectProfileManager"
                    serviceImplementation="com.intellij.configurationScript.inspection.ExternallyConfigurableProjectInspectionProfileManager"
                    preload="notHeadless" overrides="true"/>

    <runConfigurationTemplateProvider implementation="com.intellij.configurationScript.providers.MyRunConfigurationTemplateProvider"/>

    <applicationService serviceInterface="com.intellij.openapi.project.impl.ProjectStoreFactory"
                        serviceImplementation="com.intellij.configurationScript.providers.ConfigurationScriptProjectStoreFactory"
                        overrides="true"/>
  </extensions>
</idea-plugin>
 lib/configurationScript.jar  	copyright  J<idea-plugin>
  <name>Copyright</name>
  <category>Other Tools</category>
  <id>com.intellij.copyright</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <description><![CDATA[
    Ensures that files in a project or module have a consistent copyright notice.
    It does not guarantee copyright compliance nor does it constitute legal advice.
    <ul><li>Create multiple copyright profiles to use in different scopes</li>
    <li>Import existing profiles</li></ul>

    To configure, open the <b>Settings / Preferences</b> dialog and select <b>Editor | Copyright</b>.
    ]]></description>
  <vendor>JetBrains</vendor>

  <depends>com.intellij.modules.lang</depends>
  <depends>com.intellij.modules.xml</depends>

  <extensions defaultExtensionNs="com.intellij">
    <projectConfigurable groupId="editor" groupWeight="110" dynamic="true"
                         bundle="messages.CopyrightBundle"
                         key="configurable.CopyrightProjectConfigurable.display.name"
                         id="copyright"
                         instance="com.maddyhome.idea.copyright.ui.CopyrightProjectConfigurable"/>
    <checkinHandlerFactory implementation="com.maddyhome.idea.copyright.actions.UpdateCopyrightCheckinHandlerFactory"/>
    <applicationService serviceImplementation="com.maddyhome.idea.copyright.util.FileTypeUtil"/>
    <projectService serviceImplementation="com.maddyhome.idea.copyright.actions.UpdateCopyrightCheckinHandlerState"/>

    <projectService serviceImplementation="com.intellij.copyright.CopyrightManager"/>
    <externalSystemConfigurationHandler implementation="com.maddyhome.idea.copyright.import.CopyrightConfigurationHandler"/>
    <actionOnSaveInfoProvider id="copyrightInfoProvider"
                              implementation="com.maddyhome.idea.copyright.actions.CopyrightOnSaveInfoProvider"/>
    <actionOnSave id="copyrightOnSaveAction" implementation="com.maddyhome.idea.copyright.actions.CopyrightOnSaveAction"/>
  </extensions>

  <extensions defaultExtensionNs="com.intellij.copyright">
    <updater filetype="XML" implementationClass="com.maddyhome.idea.copyright.psi.UpdateXmlCopyrightsProvider"/>
    <updater filetype="DTD" implementationClass="com.maddyhome.idea.copyright.psi.UpdateXmlCopyrightsProvider"/>
    <updater filetype="HTML" implementationClass="com.maddyhome.idea.copyright.psi.UpdateXmlCopyrightsProvider"/>
    <updater filetype="XHTML" implementationClass="com.maddyhome.idea.copyright.psi.UpdateXmlCopyrightsProvider"/>
  </extensions>
  <extensionPoints>
    <extensionPoint name="updater" beanClass="com.intellij.openapi.fileTypes.FileTypeExtensionPoint" dynamic="true">
      <with attribute="implementationClass" implements="com.maddyhome.idea.copyright.psi.UpdateCopyrightsProvider"/>
    </extensionPoint>
    <extensionPoint name="variablesProvider" beanClass="com.intellij.openapi.fileTypes.FileTypeExtensionPoint" dynamic="true">
      <with attribute="implementationClass" implements="com.maddyhome.idea.copyright.pattern.CopyrightVariablesProvider"/>
    </extensionPoint>
  </extensionPoints>
  <applicationListeners>
    <listener class="com.intellij.copyright.CopyrightManagerDocumentListener" topic="com.intellij.openapi.vfs.newvfs.BulkFileListener"/>
  </applicationListeners>

  <actions>
    <action id="UpdateCopyright" class="com.maddyhome.idea.copyright.actions.UpdateCopyrightAction">
      <add-to-group group-id="ProjectViewPopupMenu" anchor="last"/>
      <add-to-group group-id="CodeMenu" anchor="last"/>
      <add-to-group group-id="NavbarPopupMenu" anchor="last"/>
    </action>
    <action id="GenerateCopyright" class="com.maddyhome.idea.copyright.actions.GenerateCopyrightAction">
      <add-to-group group-id="GenerateGroup" anchor="last"/>
    </action>
  </actions>
  <resource-bundle>messages.CopyrightBundle</resource-bundle>
</idea-plugin>
 lib/copyright.jar  css-impl  <idea-plugin>
  <name>CSS</name>
  <id>com.intellij.css</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <category>Style Sheets</category>
  <vendor>JetBrains</vendor>
  <resource-bundle>messages.CssBundle</resource-bundle>
  <description><![CDATA[
    <p>Provides coding assistance for <a href="https://developer.mozilla.org/en-US/docs/Web/CSS">Cascading Style Sheets</a> (CSS)
    to all JetBrains IDEs that <a href="https://www.jetbrains.com/products/#lang=js&type=ide">support JavaScript</a>.

    <h2>Features</h2>
    <ul>
      <li>Code highlighting, code formatting, inspections with quick fixes, and intention actions
      <li>Code completion, Emmet snippets, and integrated documentation
      <li>Code navigation, usage search, file structure view, and color preview
      <li>Refactorings: rename class or id, extract variable, extract ruleset, and more
    </ul>

    <h2>Getting started</h2>
    <p>For information on getting started, head over to the <a href="https://www.jetbrains.com/help/">documentation</a> for your IDE.
      For WebStorm, you can check out this section in the
      <a href="https://www.jetbrains.com/help/webstorm/style-sheets.html">documentation</a>.
  ]]></description>

  <depends>com.intellij.platform.images</depends>
  <depends>com.intellij.modules.xml</depends>
  <depends>com.intellij.modules.ultimate</depends>
  <depends optional="true" config-file="css-copyright.xml">com.intellij.copyright</depends>
  <depends optional="true" config-file="css-watcher.xml">com.intellij.plugins.watcher</depends>

  <extensionPoints>
    <extensionPoint name="classOrIdUsagesProvider" interface="com.intellij.psi.css.usages.CssClassOrIdUsagesProvider" dynamic="true"/>
    <extensionPoint name="structureViewChildrenProvider" interface="com.intellij.psi.css.impl.structure.CssStructureViewElementsProvider"
                    dynamic="true"/>
    <extensionPoint name="inclusionContext" interface="com.intellij.psi.css.resolve.CssInclusionContext" dynamic="true"/>
    <extensionPoint name="elementDescriptorProvider" interface="com.intellij.psi.css.CssElementDescriptorProvider" dynamic="true"/>
    <extensionPoint name="supportedFileTypesProvider" beanClass="com.intellij.psi.css.index.CssSupportedFileTypesProviderEP" dynamic="true">
      <with attribute="implementation" implements="com.intellij.psi.css.index.CssSupportedFileTypesProvider"/>
    </extensionPoint>
    <extensionPoint name="embeddedCssProvider" interface="com.intellij.psi.css.EmbeddedCssProvider" dynamic="true"/>
    <extensionPoint name="cssInspectionFilter" beanClass="com.intellij.lang.LanguageExtensionPoint" dynamic="true">
      <with attribute="implementationClass" implements="com.intellij.psi.css.inspections.CssInspectionFilter"/>
    </extensionPoint>
    <extensionPoint name="cssIntentionFilter" beanClass="com.intellij.lang.LanguageExtensionPoint" dynamic="true">
      <with attribute="implementationClass" implements="com.intellij.psi.css.actions.CssIntentionFilter"/>
    </extensionPoint>
    <extensionPoint name="dialect" interface="com.intellij.lang.css.CssDialect" dynamic="true"/>
    <extensionPoint name="cssFileReferenceProvider" interface="com.intellij.psi.css.resolve.CssFileReferenceProvider" dynamic="true"/>
  </extensionPoints>

  <extensions defaultExtensionNs="com.intellij">
    <css.supportedFileTypesProvider implementation="com.intellij.psi.css.index.CssSupportedFileTypesProvider$Css" version="1"/>
    <!-- manipulators -->
    <lang.elementManipulator forClass="com.intellij.psi.css.CssExpression"
                             implementationClass="com.intellij.psi.css.impl.manipulators.CssExpressionManipulator"/>
    <lang.elementManipulator forClass="com.intellij.psi.css.CssFunction"
                             implementationClass="com.intellij.psi.css.impl.manipulators.CssFunctionManipulator"/>
    <lang.elementManipulator forClass="com.intellij.psi.css.CssString"
                             implementationClass="com.intellij.psi.css.impl.manipulators.CssStringManipulator"/>
    <lang.elementManipulator forClass="com.intellij.psi.css.CssTerm"
                             implementationClass="com.intellij.psi.css.impl.manipulators.CssTermManipulator"/>
    <lang.elementManipulator forClass="com.intellij.psi.css.CssUri"
                             implementationClass="com.intellij.psi.css.impl.manipulators.CssUriManipulator"/>
    <lang.elementManipulator forClass="com.intellij.psi.css.impl.CssTokenImpl"
                             implementationClass="com.intellij.psi.css.impl.CssTokenImpl$Manipulator"/>

    <inspection.basicVisitor class="com.intellij.psi.css.CssElementVisitor"/>

    <completion.contributor language="CSS" id="css"
                            implementationClass="com.intellij.psi.css.impl.util.completion.CssCompletionContributor"/>
    <completion.contributor language="CSS"
                            id="cssDumbCompletion"
                            implementationClass="com.intellij.psi.css.impl.util.completion.CssDumbAwareCompletionContributor"/>
    <!-- Different languages (e.g. Thymeleaf, Jade) use HtmlCssClassOrIdReference, so we set language="any" here and filter by reference later -->
    <completion.contributor language="any" id="cssClassOrIdReferenceCompletionContributor"
                            implementationClass="com.intellij.psi.css.impl.util.completion.CssClassOrIdReferenceCompletionContributor"/>
    <weigher key="completion" order="last" implementationClass="com.intellij.psi.css.impl.util.completion.CssValuesCompletionWeigher"/>
    <completion.preselectionBehaviourProvider
      implementation="com.intellij.psi.css.impl.util.completion.CssCompletionPreselectionBehaviourProvider"/>

    <multiHostInjector implementation="com.intellij.psi.css.CssLanguageInjector"/>
    <lookup.charFilter implementation="com.intellij.psi.css.CssCharFilter"/>
    <psi.referenceContributor implementation="com.intellij.psi.css.CssReferenceContributor"/>
    <referencesSearch implementation="com.intellij.psi.css.usages.CssElementsSearcher"/>

    <fileBasedIndex implementation="com.intellij.psi.css.index.CssIndex"/>
    <fileBasedIndex implementation="com.intellij.psi.css.index.CssTemplateSelectorsIndex"/>
    <stubElementTypeHolder externalIdPrefix="CSS." class="com.intellij.psi.css.impl.CssStubElementTypes"/>
    <stubIndex implementation="com.intellij.psi.css.impl.stubs.index.CssAmpersandSelectorIndex"/>
    <stubIndex implementation="com.intellij.psi.css.impl.stubs.index.CssClassIndex"/>
    <stubIndex implementation="com.intellij.psi.css.impl.stubs.index.CssIdIndex"/>
    <stubIndex implementation="com.intellij.psi.css.impl.stubs.index.CssAttributeIndex"/>
    <stubIndex implementation="com.intellij.psi.css.impl.stubs.index.CssCustomPropertyIndex"/>
    <stubIndex implementation="com.intellij.psi.css.impl.stubs.index.CssCustomPropertyAtRuleIndex"/>
    <stubIndex implementation="com.intellij.psi.css.impl.stubs.index.CssCustomMixinIndex"/>

    <include.provider implementation="com.intellij.psi.css.include.CssFileIncludeProvider"/>
    <gotoSymbolContributor implementation="com.intellij.psi.css.index.CssGotoSymbolContributor"/>
    <applicationService serviceImplementation="com.intellij.codeInsight.template.emmet.configuration.CssEmmetOptions"/>
    <applicationService serviceInterface="com.intellij.psi.css.resolve.CssResolveManager"
                        serviceImplementation="com.intellij.psi.css.impl.util.references.CssResolveManagerImpl"/>
    <applicationService serviceImplementation="com.intellij.psi.css.impl.util.scheme.CssElementDescriptorFactory2"/>
    <applicationService serviceImplementation="com.intellij.dupLocator.CssDuplocateSettings"/>
    <applicationService serviceInterface="com.intellij.psi.css.inspections.CssFixFactory"
                        serviceImplementation="com.intellij.psi.css.inspections.CssFixFactoryImpl"/>

    <!-- folding -->
    <lang.foldingBuilder language="CSS" implementationClass="com.intellij.psi.css.impl.util.editor.CssFoldingBuilder"/>
    <!-- folding -->

    <projectService serviceImplementation="com.intellij.psi.css.CssElementFactory"/>
    <lang.smartEnterProcessor language="CSS" implementationClass="com.intellij.psi.css.actions.smartenter.CssSmartEnterProcessor"/>
    <lang.surroundDescriptor language="CSS" implementationClass="com.intellij.psi.css.editor.CssSurroundDescriptor"/>
    <enterHandlerDelegate implementation="com.intellij.psi.css.impl.util.editor.CssEnterHandler" order="first"/>
    <colorSettingsPage implementation="com.intellij.psi.css.impl.util.CssColorsAndFontsPage"/>
    <lang.parserDefinition language="CSS" implementationClass="com.intellij.lang.css.CSSParserDefinition"/>
    <lang.formatter language="CSS" implementationClass="com.intellij.psi.css.impl.util.editor.CssFormattingModelBuilder"/>
    <lang.rearranger language="CSS" implementationClass="com.intellij.lang.css.rearranger.CssRearranger"/>
    <langCodeStyleSettingsProvider implementation="com.intellij.psi.css.codeStyle.CssLanguageCodeStyleSettingsProvider"/>
    <lang.documentationProvider id="CssDocumentationProvider" language="CSS"
                                implementationClass="com.intellij.psi.css.impl.util.CssDocumentationProvider"/>
    <lang.namesValidator language="CSS" implementationClass="com.intellij.lang.css.CssNamesValidator"/>
    <lang.findUsagesProvider language="CSS" implementationClass="com.intellij.psi.css.usages.CssFindUsagesProvider"/>
    <elementDescriptionProvider implementation="com.intellij.psi.css.CssElementDescriptionProvider"/>
    <lang.commenter language="CSS" implementationClass="com.intellij.psi.css.impl.util.editor.CssCommenter"/>
    <lang.braceMatcher language="CSS" implementationClass="com.intellij.psi.css.impl.util.editor.CssBraceMatcher"/>
    <breadcrumbsInfoProvider implementation="com.intellij.psi.css.impl.util.editor.CssBreadcrumbsInfoProvider" order="last"/>
    <codeInsight.parameterInfo language="CSS" implementationClass="com.intellij.psi.css.parameterinfo.CssParameterInfoHandler"/>
    <lang.syntaxHighlighter language="CSS" implementationClass="com.intellij.psi.css.impl.util.CssHighlighter"/>
    <lang.psiStructureViewFactory language="CSS" implementationClass="com.intellij.psi.css.impl.structure.CssStructureViewBuilderFactory"/>
    <lang.structureViewExtension implementation="com.intellij.psi.css.impl.structure.CssStructureViewExtension"/>
    <lang.ast.factory language="CSS" implementationClass="com.intellij.psi.css.impl.CssTreeElementFactory"/>
    <declarationRangeHandler key="com.intellij.psi.css.CssRuleset" implementationClass="com.intellij.psi.css.CssDeclarationRangeHandler"/>
    <declarationRangeHandler key="com.intellij.psi.css.CssAtRule" implementationClass="com.intellij.psi.css.CssDeclarationRangeHandler"/>
    <lang.implementationTextSelectioner language="CSS" implementationClass="com.intellij.psi.css.CSSImplementationTextSelectioner"/>
    <renameHandler implementation="com.intellij.psi.css.actions.rename.CssClassOrIdRenameHandler"/>
    <renameHandler implementation="com.intellij.psi.css.actions.rename.CssCustomPropertyRenameHandler"/>
    <renameHandler implementation="com.intellij.psi.css.actions.rename.CssColorValueRenameHandler"/>
    <vetoRenameCondition implementation="com.intellij.psi.css.actions.rename.CssVetoRenameCondition"/>
    <referenceProviderType key="Css Class or ID Provider"
                           implementationClass="com.intellij.psi.css.impl.util.CssInHtmlClassOrIdReferenceProvider"/>
    <statementUpDownMover implementation="com.intellij.psi.css.actions.CssRulesetUpDownMover" id="css" order="before xml, after statement"/>
    <annotator language="CSS" implementationClass="com.intellij.psi.css.browse.CssColorAnnotator"/>
    <annotator language="CSS" implementationClass="com.intellij.psi.css.impl.util.CssHighlightingAnnotator"/>

    <projectService serviceImplementation="com.intellij.psi.css.browse.BrowseCssStylesManager"/>
    <highlightErrorFilter implementation="com.intellij.psi.css.CssErrorFilter"/>
    <problemFileHighlightFilter implementation="com.intellij.psi.css.impl.CssProblemFileHighlightFilter"/>
    <fileType name="CSS" implementationClass="com.intellij.psi.css.CssFileType" fieldName="INSTANCE" extensions="css" language="CSS"/>
    <internalFileTemplate name="CSS File"/>
    <defaultLiveTemplates file="liveTemplates/zen_css.xml"/>
    <typedHandler implementation="com.intellij.psi.css.CssTypedHandler"/>

    <idIndexer filetype="CSS" implementationClass="com.intellij.psi.css.index.CssIdIndexer"/>
    <todoIndexer filetype="CSS" implementationClass="com.intellij.psi.css.index.CssTodoIndexer"/>
    <indexPatternBuilder implementation="com.intellij.psi.css.index.CssIndexPatternBuilder"/>

    <duplicates.profile implementation="com.intellij.dupLocator.CssDuplicatesProfile"/>
    <duplicates.presentation implementation="com.intellij.dupLocator.CssDuplicatesProfile"/>

    <xml.zenCodingGenerator implementation="com.intellij.codeInsight.template.emmet.CssZenCodingGeneratorImpl"/>
    <xml.attributeDescriptorsProvider implementation="com.intellij.psi.css.CssAttributeDescriptorsProvider" order="last"/>
    <xml.relatedToHtmlFilesContributor implementation="com.intellij.navigation.CssRelatedToHtmlFilesContributor"/>
    <gotoRelatedProvider implementation="com.intellij.navigation.CssGotoRelatedProvider"/>

    <iconProvider implementation="com.intellij.psi.css.CssIconProvider"/>
    <extendWordSelectionHandler id="cssSelectioner" implementation="com.intellij.psi.css.impl.util.editor.CssSelectioner"
                                order="before xmlTokenSelectioner"/>
    <quoteHandler fileType="CSS" className="com.intellij.psi.css.impl.util.editor.CssQuoteHandler"/>
    <embeddedTokenTypesProvider implementation="com.intellij.psi.css.CssEmbeddedTokenTypesProvider"/>
    <embeddedTokenHighlighter implementation="com.intellij.psi.css.impl.util.CssHighlighter"/>
    <html.embeddedContentSupport implementation="com.intellij.psi.css.CssHtmlEmbeddedContentSupport"/>
    <defaultHighlightingSettingProvider order="before GeneratedSourcesHighlightingSettingProvider"
                                        implementation="com.intellij.psi.css.inspections.CssDefaultHighlightingSettingsProvider"/>
    <generatedSourcesFilter implementation="com.intellij.psi.css.CssMinifiedFilesFilter"/>
    <lang.lineWrapStrategy language="CSS" implementationClass="com.intellij.psi.css.impl.util.editor.CssLineWrapPositionStrategy"/>
    <preFormatProcessor implementation="com.intellij.psi.css.impl.util.editor.CssHexColorsFormatPreprocessor"/>
    <preFormatProcessor implementation="com.intellij.psi.css.impl.util.editor.CssQuotesFormatPreprocessor"/>

    <structuralsearch.profile implementation="com.intellij.structuralsearch.extenders.CssStructuralSearchProfile"/>

    <!-- live template contexts-->
    <liveTemplateContext contextId="CSS_PROPERTY_VALUE" baseContextId="CSS"
                         implementation="com.intellij.psi.css.livetemplate.CssPropertyValueTemplateContextType"/>
    <liveTemplateContext contextId="CSS_DECLARATION_BLOCK" baseContextId="CSS"
                         implementation="com.intellij.psi.css.livetemplate.CssDeclarationBlockTemplateContextType"/>
    <liveTemplateContext contextId="CSS_RULESET_LIST" baseContextId="CSS"
                         implementation="com.intellij.psi.css.livetemplate.CssRulesetTemplateContextType"/>
    <liveTemplateContext contextId="CSS" implementation="com.intellij.psi.css.livetemplate.CssLiveTemplateGenericContextType"/>

    <projectConfigurable id="configurable.stylesheets" groupId="language" instance="com.intellij.lang.css.settings.StylesheetsConfigurable"
                         key="css.stylesheets.configurable.title" bundle="messages.CssBundle"/>

    <projectConfigurable parentId="configurable.stylesheets"
                         id="settings.css.dialects"
                         key="css.dialects.title"
                         bundle="messages.CssBundle"
                         provider="com.intellij.lang.css.settings.CssDialectsConfigurableProvider"
                         nonDefaultProject="true"/>
    <editorAppearanceConfigurable instance="com.intellij.psi.css.impl.util.editor.CssEditorAppearanceConfigurable"/>
    <search.optionContributor implementation="com.intellij.lang.css.settings.CssDialectsSearchableOptionContributor"/>
    <projectService serviceImplementation="com.intellij.lang.css.CssDialectMappings"/>
    <filePropertyPusher implementation="com.intellij.lang.css.CssDialectPusher"/>
    <projectViewNestingRulesProvider implementation="com.intellij.lang.css.projectView.CssNestingRulesProvider"/>

    <refactoring.moveHandler implementation="com.intellij.lang.css.refactoring.moveRuleset.CssMoveRulesetHandler"/>
    <lang.refactoringSupport language="CSS" implementationClass="com.intellij.lang.css.refactoring.CssRefactoringSupportProvider"/>

    <duplicateScope language="CSS" implementationClass="com.intellij.psi.css.inspections.clones.CssDuplicateScope"/>

    <!-- Web Symbols -->
    <webSymbols.defaultIconProvider implementation="com.intellij.webSymbols.css.CssWebSymbolDefaultIconProvider"/>

    <!-- INSPECTIONS -->

    <!-- Possible bugs-->
    <localInspection language="CSS" bundle="messages.CssBundle" key="css.inspections.float.px.length"
                     groupPath="CSS" groupKey="css.inspections.probable.bugs.group" enabledByDefault="true" level="WEAK WARNING"
                     implementationClass="com.intellij.psi.css.inspections.bugs.CssNonIntegerLengthInPixelsInspection"/>
    <localInspection language="CSS" shortName="CssNoGenericFontName" bundle="messages.CssBundle" key="css.inspections.nongeneric.fontname"
                     groupPath="CSS" groupKey="css.inspections.probable.bugs.group" enabledByDefault="true" level="WARNING"
                     implementationClass="com.intellij.psi.css.inspections.bugs.CssNoGenericFontNameInspection"/>
    <localInspection language="CSS" shortName="CssMissingComma" bundle="messages.CssBundle"
                     key="css.inspections.missing.comma.inspection.name"
                     groupPath="CSS" groupKey="css.inspections.probable.bugs.group" enabledByDefault="true" level="WARNING"
                     implementationClass="com.intellij.psi.css.inspections.bugs.CssMissingCommaInspection"/>

    <!-- Code style issues -->
    <localInspection language="CSS" bundle="messages.CssBundle" key="css.inspections.redundant.unit"
                     groupPath="CSS" groupKey="css.inspections.code.style.issues.group" enabledByDefault="true" level="WARNING"
                     implementationClass="com.intellij.psi.css.inspections.style.CssRedundantUnitInspection"/>
    <localInspection language="CSS" bundle="messages.CssBundle" key="css.inspections.missing.semicolon.name"
                     groupPath="CSS" groupKey="css.inspections.code.style.issues.group" enabledByDefault="false" level="WARNING"
                     implementationClass="com.intellij.psi.css.inspections.style.CssMissingSemicolonInspection"/>

    <!-- Other -->
    <localInspection language="CSS" shortName="CssOverwrittenProperties" bundle="messages.CssBundle"
                     key="css.inspections.overwritten.properties"
                     groupKey="css.inspections.family" enabledByDefault="true" level="WARNING"
                     implementationClass="com.intellij.psi.css.inspections.CssOverwrittenPropertiesInspection"/>
    <localInspection language="CSS" bundle="messages.CssBundle" key="css.inspections.unknown.property" groupPath="CSS"
                     groupKey="css.inspections.invalid.group" enabledByDefault="true" level="WARNING"
                     implementationClass="com.intellij.psi.css.inspections.CssUnknownPropertyInspection"/>
    <localInspection language="CSS" bundle="messages.CssBundle" key="css.inspections.unresolved.custom.property.at.rule" groupPath="CSS"
                     groupKey="css.inspections.invalid.group" enabledByDefault="true" level="ERROR"
                     implementationClass="com.intellij.psi.css.inspections.invalid.CssUnresolvedCustomPropertyInspection"/>
    <localInspection language="CSS" bundle="messages.CssBundle" key="css.inspections.unresolved.class.in.composes.rule" groupPath="CSS"
                     groupKey="css.inspections.invalid.group" enabledByDefault="true" level="ERROR"
                     implementationClass="com.intellij.psi.css.inspections.invalid.CssUnresolvedClassInComposesRuleInspection"/>
    <localInspection language="CSS" bundle="messages.CssBundle" key="css.inspections.invalid.property.value" groupPath="CSS"
                     groupKey="css.inspections.invalid.group" enabledByDefault="true" level="ERROR"
                     implementationClass="com.intellij.psi.css.inspections.invalid.CssInvalidPropertyValueInspection"/>
    <localInspection language="CSS" bundle="messages.CssBundle" key="css.inspections.unknown.unit" groupPath="CSS"
                     groupKey="css.inspections.invalid.group" enabledByDefault="true" level="ERROR"
                     implementationClass="com.intellij.psi.css.inspections.invalid.CssUnknownUnitInspection"/>
    <localInspection language="CSS" bundle="messages.CssBundle" key="css.inspections.unknown.target" groupPath="CSS"
                     groupKey="css.inspections.invalid.group" enabledByDefault="true" level="ERROR"
                     implementationClass="com.intellij.psi.css.inspections.invalid.CssUnknownTargetInspection"/>
    <localInspection language="CSS" bundle="messages.CssBundle" key="css.inspections.invalid.pseudo" groupPath="CSS"
                     groupKey="css.inspections.invalid.group" enabledByDefault="true" level="ERROR"
                     implementationClass="com.intellij.psi.css.inspections.invalid.CssInvalidPseudoSelectorInspection"/>
    <localInspection language="CSS" bundle="messages.CssBundle" key="css.inspections.invalid.charset" groupPath="CSS"
                     groupKey="css.inspections.invalid.group" enabledByDefault="true" level="WARNING"
                     implementationClass="com.intellij.psi.css.inspections.invalid.CssInvalidCharsetRuleInspection"/>
    <localInspection language="CSS" bundle="messages.CssBundle" key="css.inspections.invalid.element.selector"
                     groupPath="CSS" groupKey="css.inspections.invalid.group" enabledByDefault="true" level="WARNING"
                     implementationClass="com.intellij.psi.css.inspections.invalid.CssInvalidHtmlTagReferenceInspection"/>
    <localInspection language="CSS" bundle="messages.CssBundle" key="css.inspections.negative.value" groupPath="CSS"
                     groupKey="css.inspections.invalid.group" enabledByDefault="true" level="ERROR"
                     implementationClass="com.intellij.psi.css.inspections.CssNegativeValueInspection"/>
    <globalInspection language="CSS" bundle="messages.CssBundle" key="css.inspections.unused.symbol"
                      groupKey="css.inspections.family" enabledByDefault="true" level="WARNING"
                      implementationClass="com.intellij.psi.css.inspections.CssUnusedSymbolInspection"/>
    <localInspection language="CSS" bundle="messages.CssBundle" key="css.inspections.invalid.import" groupPath="CSS"
                     groupKey="css.inspections.invalid.group" enabledByDefault="true" level="WARNING"
                     implementationClass="com.intellij.psi.css.inspections.invalid.CssInvalidImportInspection"/>
    <localInspection language="CSS" bundle="messages.CssBundle" key="css.inspections.invalid.nested.selector" groupPath="CSS"
                     groupKey="css.inspections.invalid.group" enabledByDefault="false" level="WARNING"
                     implementationClass="com.intellij.psi.css.inspections.invalid.CssInvalidNestedSelectorInspection"/>
    <localInspection language="CSS" bundle="messages.CssBundle" key="css.inspections.unknown.at.rule" groupPath="CSS"
                     groupKey="css.inspections.invalid.group" enabledByDefault="true" level="ERROR"
                     implementationClass="com.intellij.psi.css.inspections.invalid.CssInvalidAtRuleInspection"/>
    <localInspection language="CSS" bundle="messages.CssBundle" key="css.inspections.deprecated.value"
                     groupKey="css.inspections.family" enabledByDefault="true" level="ERROR"
                     implementationClass="com.intellij.psi.css.inspections.CssDeprecatedValueInspection"/>
    <localInspection language="CSS" bundle="messages.CssBundle"
                     key="css.inspections.replace.with.shorthand.safely" groupKey="css.inspections.family" enabledByDefault="true"
                     level="WEAK WARNING" implementationClass="com.intellij.psi.css.inspections.CssReplaceWithShorthandSafelyInspection"/>
    <localInspection language="CSS" bundle="messages.CssBundle"
                     key="css.inspections.replace.with.shorthand.unsafely" groupKey="css.inspections.family" enabledByDefault="true"
                     level="INFORMATION" implementationClass="com.intellij.psi.css.inspections.CssReplaceWithShorthandUnsafelyInspection"/>
    <localInspection language="CSS" shortName="CssConvertColorToRgbInspection" bundle="messages.CssBundle"
                     key="css.inspections.convert.color.to.rgb"
                     groupKey="css.inspections.family" enabledByDefault="false" level="WARNING"
                     implementationClass="com.intellij.psi.css.inspections.CssConvertColorToRgbInspection"/>
    <localInspection language="CSS" shortName="CssConvertColorToHexInspection" bundle="messages.CssBundle"
                     key="css.inspections.convert.color.to.hex"
                     groupKey="css.inspections.family" enabledByDefault="false" level="WARNING"
                     implementationClass="com.intellij.psi.css.inspections.CssConvertColorToHexInspection"/>
    <localInspection language="CSS" bundle="messages.CssBundle" key="css.inspections.invalid.function" groupPath="CSS"
                     groupKey="css.inspections.invalid.group" enabledByDefault="true" level="ERROR"
                     implementationClass="com.intellij.psi.css.inspections.invalid.CssInvalidFunctionInspection"/>
    <localInspection language="CSS" bundle="messages.CssBundle" key="css.inspections.invalid.media.feature" groupPath="CSS"
                     groupKey="css.inspections.invalid.group" enabledByDefault="true" level="ERROR"
                     implementationClass="com.intellij.psi.css.inspections.invalid.CssInvalidMediaFeatureInspection"/>
    <localInspection language="CSS" bundle="messages.CssBundle" key="css.inspections.browser.compatibility.properties"
                     groupKey="css.inspections.family" enabledByDefault="false" level="WARNING"
                     implementationClass="com.intellij.psi.css.inspections.CssBrowserCompatibilityForPropertiesInspection"/>
    <localInspection language="CSS" bundle="messages.CssBundle" key="css.inspections.invalid.custom.property.at.rule.name" groupPath="CSS"
                     groupKey="css.inspections.invalid.group" enabledByDefault="true" level="ERROR"
                     implementationClass="com.intellij.psi.css.inspections.invalid.CssInvalidCustomPropertyAtRuleNameInspection"/>
   <localInspection language="CSS" bundle="messages.CssBundle" key="css.inspections.invalid.custom.property.at.rule.declaration" groupPath="CSS"
                    groupKey="css.inspections.invalid.group" enabledByDefault="true" level="ERROR"
                    implementationClass="com.intellij.psi.css.inspections.invalid.CssInvalidCustomPropertyAtRuleDeclarationInspection"/>

    <lang.inspectionSuppressor language="CSS" implementationClass="com.intellij.psi.css.inspections.suppress.CssInspectionSuppressor"/>
    <css.cssInspectionFilter language="CSS" implementationClass="com.intellij.psi.css.inspections.CssInspectionFilterImpl"/>

    <webSymbols.highlightInLanguage language="CSS"/>

    <webSymbols.webTypes source="web-types/css.web-types.json" enableByDefault="true"/>

    <css.elementDescriptorProvider implementation="com.intellij.webSymbols.css.WebSymbolsCssDescriptorsProvider"/>

    <webSymbols.queryConfigurator
      implementation="com.intellij.webSymbols.css.WebSymbolsCssQueryConfigurator"/>

    <webSymbols.codeCompletionItemCustomizer
      id="css"
      implementation="com.intellij.webSymbols.css.CssSymbolsCodeCompletionItemCustomizer"/>

    <webSymbols.inspectionToolMapping symbolNamespace="css" symbolKind="properties" problemKind="UnknownSymbol"
                                      toolShortName="CssUnknownProperty"
                                      bundleName="messages.CssBundle" messageKey="css.inspections.unknown.message"/>

    <completion.contributor language="HtmlCompatible"
                            implementationClass="com.intellij.webSymbols.css.WebSymbolsCssHtmlCompletionContributor"/>
    <completion.contributor language="CSS"
                            implementationClass="com.intellij.webSymbols.css.WebSymbolsCssCompletionContributor"
                            order="before css, before cssDumbCompletion"/>

    <psi.symbolReferenceProvider hostElementClass="com.intellij.psi.css.CssSimpleSelector"
                                 hostLanguage="CSS"
                                 implementationClass="com.intellij.webSymbols.css.simpleSelectors.WebSymbolSimpleSelectorReferenceProvider"
                                 referenceClass="com.intellij.webSymbols.references.WebSymbolReference"
                                 targetClass="com.intellij.webSymbols.WebSymbol"/>
    <psi.symbolReferenceProvider hostElementClass="com.intellij.psi.css.CssDeclaration"
                                 hostLanguage="CSS"
                                 implementationClass="com.intellij.webSymbols.css.properties.WebSymbolCssPropertyReferenceProvider"
                                 referenceClass="com.intellij.webSymbols.references.WebSymbolReference"
                                 targetClass="com.intellij.webSymbols.WebSymbol"/>
    <psi.symbolReferenceProvider hostElementClass="com.intellij.psi.css.CssClass"
                                 hostLanguage="CSS"
                                 implementationClass="com.intellij.webSymbols.css.classes.WebSymbolCssClassInCssReferenceProvider"
                                 referenceClass="com.intellij.webSymbols.references.WebSymbolReference"
                                 targetClass="com.intellij.webSymbols.WebSymbol"/>
    <psi.symbolReferenceProvider hostElementClass="com.intellij.psi.css.CssPseudoSelector"
                                 hostLanguage="CSS"
                                 implementationClass="com.intellij.webSymbols.css.pseudo.WebSymbolCssPseudoSelectorReferenceProvider"
                                 referenceClass="com.intellij.webSymbols.references.WebSymbolReference"
                                 targetClass="com.intellij.webSymbols.WebSymbol"/>
    <psi.symbolReferenceProvider hostElementClass="com.intellij.psi.css.CssFunction"
                                 hostLanguage="CSS"
                                 implementationClass="com.intellij.webSymbols.css.functions.WebSymbolCssFunctionReferenceProvider"
                                 referenceClass="com.intellij.webSymbols.references.WebSymbolReference"
                                 targetClass="com.intellij.webSymbols.WebSymbol"/>
    <psi.symbolReferenceProvider hostElementClass="com.intellij.psi.css.impl.CssTermImpl"
                                 hostLanguage="CSS"
                                 implementationClass="com.intellij.webSymbols.css.terms.WebSymbolCssTermReferenceProvider"
                                 referenceClass="com.intellij.webSymbols.references.WebSymbolReference"
                                 targetClass="com.intellij.webSymbols.WebSymbol"/>
    <psi.symbolReferenceProvider hostElementClass="com.intellij.psi.xml.XmlAttributeValue"
                                 hostLanguage="HtmlCompatible"
                                 implementationClass="com.intellij.webSymbols.css.classes.WebSymbolCssClassInHtmlReferenceProvider"
                                 referenceClass="com.intellij.webSymbols.references.WebSymbolReference"
                                 targetClass="com.intellij.webSymbols.WebSymbol"/>

    <!-- intentions -->
    <intentionAction>
      <language>XML</language>
      <className>com.intellij.psi.css.actions.ExtractInlineCssAction</className>
      <bundleName>messages.CssBundle</bundleName>
      <categoryKey>css.intentions.category</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>XML</language>
      <className>com.intellij.psi.css.actions.CreateSelectorAction</className>
      <bundleName>messages.CssBundle</bundleName>
      <categoryKey>css.intentions.category</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>CSS</language>
      <className>com.intellij.psi.css.actions.CssExtractRulesetIntentionAction</className>
      <bundleName>messages.CssBundle</bundleName>
      <categoryKey>css.intentions.category</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>CSS</language>
      <className>com.intellij.psi.css.actions.CssReplaceVarWithFallbackValueIntention</className>
      <bundleName>messages.CssBundle</bundleName>
      <categoryKey>css.intentions.category</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>CSS</language>
      <className>com.intellij.psi.css.actions.CssExpandShorthandPropertyAction</className>
      <bundleName>messages.CssBundle</bundleName>
      <categoryKey>css.intentions.category</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>CSS</language>
      <className>com.intellij.psi.css.actions.CssReplaceQuotesIntention</className>
      <bundleName>messages.CssBundle</bundleName>
      <categoryKey>css.intentions.category</categoryKey>
    </intentionAction>

    <intentionAction>
      <language>CSS</language>
      <className>com.intellij.psi.css.actions.colors.CssConvertToRgbIntention</className>
      <bundleName>messages.CssBundle</bundleName>
      <categoryKey>css.intentions.category</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>CSS</language>
      <className>com.intellij.psi.css.actions.colors.CssConvertToHslIntention</className>
      <bundleName>messages.CssBundle</bundleName>
      <categoryKey>css.intentions.category</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>CSS</language>
      <className>com.intellij.psi.css.actions.colors.CssConvertToLchIntention</className>
      <bundleName>messages.CssBundle</bundleName>
      <categoryKey>css.intentions.category</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>CSS</language>
      <className>com.intellij.psi.css.actions.colors.CssConvertToOklchIntention</className>
      <bundleName>messages.CssBundle</bundleName>
      <categoryKey>css.intentions.category</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>CSS</language>
      <className>com.intellij.psi.css.actions.colors.CssConvertToHexIntention</className>
      <bundleName>messages.CssBundle</bundleName>
      <categoryKey>css.intentions.category</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>CSS</language>
      <className>com.intellij.psi.css.actions.colors.CssConvertToGrayIntention</className>
      <bundleName>messages.CssBundle</bundleName>
      <categoryKey>css.intentions.category</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>CSS</language>
      <className>com.intellij.psi.css.actions.colors.CssConvertToHwbIntention</className>
      <bundleName>messages.CssBundle</bundleName>
      <categoryKey>css.intentions.category</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>CSS</language>
      <className>com.intellij.psi.css.actions.colors.CssReplaceWithColorNameIntention</className>
      <bundleName>messages.CssBundle</bundleName>
      <categoryKey>css.intentions.category</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>CSS</language>
      <className>com.intellij.psi.css.actions.colors.CssChooseColorIntention</className>
      <bundleName>messages.CssBundle</bundleName>
      <categoryKey>css.intentions.category</categoryKey>
    </intentionAction>

    <intentionAction>
      <language>CSS</language>
      <className>com.intellij.psi.css.actions.images.CssExtractImageFromDataUriIntention</className>
      <bundleName>messages.CssBundle</bundleName>
      <categoryKey>css.intentions.category</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>CSS</language>
      <className>com.intellij.psi.css.actions.images.CssUpdateBackgroundImageSizeIntention</className>
      <bundleName>messages.CssBundle</bundleName>
      <categoryKey>css.intentions.category</categoryKey>
    </intentionAction>
  </extensions>

  <extensions defaultExtensionNs="com.intellij.css">
    <classOrIdUsagesProvider implementation="com.intellij.psi.css.usages.CssClassOrIdReferenceBasedUsagesProvider"/>
    <elementDescriptorProvider implementation="com.intellij.psi.css.impl.util.scheme.CssElementDescriptorProviderImpl"
                               id="cssElementDescriptorProvider" order="last"/>
  </extensions>

  <extensions defaultExtensionNs="com.intellij.spellchecker">
    <support language="CSS" implementationClass="com.intellij.spellchecker.CssSpellcheckingStrategy"/>
    <bundledDictionaryProvider implementation="com.intellij.spellchecker.CssBundledDictionaryProvider"/>
  </extensions>

  <actions>
    <action id="ReloadCssDescriptors"
            class="com.intellij.psi.css.actions.ReloadCssDescriptorsInternalAction"
            internal="true">
    </action>

    <action id="ShowAppliedStylesAction" class="com.intellij.psi.css.actions.ShowAppliedStylesAction">
      <add-to-group group-id="EditorLangPopupMenu" anchor="last"/>
    </action>

    <action id="NewStylesheetFile" class="com.intellij.lang.css.actions.CreateStylesheetFileAction"
            icon="AllIcons.FileTypes.Css">
      <add-to-group group-id="NewWebDevelopment" anchor="after" relative-to-action="NewXml"/>
    </action>
  </actions>
</idea-plugin>
 lib/css-impl.jar  
cwm-plugin  <idea-plugin xmlns:xi="http://www.w3.org/2001/XInclude">
  <id>com.jetbrains.codeWithMe</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>

  <incompatible-with>com.intellij.modules.rider</incompatible-with>

  <product-descriptor code="PCWMP" release-date="20240404" release-version="2024100" optional="true"/>

  <xi:include href="/META-INF/RdPlatform.xml" xpointer="xpointer(/idea-plugin/*)" />
  <xi:include href="/META-INF/RdUi.xml" xpointer="xpointer(/idea-plugin/*)" />
  <xi:include href="/META-INF/codeWithMe.xml" xpointer="xpointer(/idea-plugin/*)" />
  <xi:include href="/META-INF/pluginBase.xml" xpointer="xpointer(/idea-plugin/*)" />
  <xi:include href="/META-INF/cwm.plugin.android.xml" xpointer="xpointer(/idea-plugin/*)" />

  <content>
    <module name="intellij.cwm.plugin.newUiOnboarding"/>
    <module name="intellij.cwm.plugin.elevation"/>
  </content>
</idea-plugin>
 lib/cwm-plugin.jar lib/cwm-plugin-terminal.jar lib/cwm-plugin-notebooks.jar 
lib/rd.jar 
lib/ice4j.jar 
lib/jstun.jar lib/cwm-host.jar lib/cwm-model.jar lib/cwm-common.jar lib/jitsi-utils.jar lib/tls-channel.jar lib/java-websocket.jar lib/quiche-jna-stubs.jar lib/bouncy-castle-pgp.jar lib/jnaerator-runtime.jar lib/cwm-host-unattended.jar lib/cwm-unattended-common.jar  
DatabaseTools  
<idea-plugin xmlns:xi="http://www.w3.org/2001/XInclude">
  <name>Database Tools and SQL</name>
  <id>com.intellij.database</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <description>
    <![CDATA[
        The Database Tools and SQL plugin for IntelliJ-based IDEs allows you to query, create, and manage databases and provides full SQL language support.
        <br><br>
        The plugin provides all the same features as <a href="https://www.jetbrains.com/datagrip/">DataGrip</a>, the standalone JetBrains IDE for databases.
        <br><br>
        <b>Main features:</b><br>
        - Database explorer<br>
        - Ability to execute queries<br>
        - Editable data spreadsheet<br>
        - Syntax highlighting and coding assistance for SQL<br>
        - Refactorings<br>
        - Import/Export options<br>
        - Diagrams<br>
        <br>
        <a href="https://www.jetbrains.com/datagrip/features/">Discover all the features</a><br>
        <br>
        <b>The following databases are supported:</b><br>
        <br>
        Major relational:
        <br>
        MySQL, MariaDB, PostgreSQL, Oracle Database, Microsoft SQL Server, Azure SQL Database<br>
        <br>
        NoSQL:<br>
        MongoDB, Redis, Couchbase, Apache Cassandra<br>
        <br>
        Other:<br>
        SQLite, Amazon Redshift, Amazon DynamoDB, IBM Db2, Sybase ASE, Exasol, Snowflake, HSQLDB, H2, Apache Derby, Greenplum, Apache Hive, Vertica, ClickHouse, Google BigQuery, CockroachDB<br>
        <br>
        If the DBMS you use has a JDBC driver, you can connect to it via the Database tools and SQL plugin.<br>
        <br>
        <b>Resources:</b> <a href="https://twitter.com/datagrip">DataGrip on X</a>, <a href="https://intellij-support.jetbrains.com/hc/en-us/community/topics/200381555-DataGrip">Community forum</a>, <a href="https://youtrack.jetbrains.com/issues/DBE">Issue tracker</a>, <a href="https://blog.jetbrains.com/datagrip/">Blog</a>, <a href="https://join.slack.com/t/datagripworkspace/shared_invite/zt-215cs3o5c-6gi_wnZaX8hyFdWXBo77LA">Slack community</a>
      ]]>
  </description>
  <vendor>JetBrains</vendor>
  <category>Database</category>
  <resource-bundle>messages.DatabaseBundle</resource-bundle>

  <depends>com.intellij.modules.ultimate</depends>

  <content>
    <module name="intellij.database.diagrams"/>
  </content>
  <depends optional="true" config-file="/com/intellij/sql/dialects/mongo/mongo-js-external.xml">JavaScript</depends>

  <xi:include href="/META-INF/DatabasePlugin.xml" xpointer="xpointer(/idea-plugin/*)"/>
  <xi:include href="/META-INF/SqlPlugin.xml" xpointer="xpointer(/idea-plugin/*)"/>

  <extensions defaultExtensionNs="com.intellij">

    <groupConfigurable id="database.main" parentId="tools" weight="125"
                       bundle="messages.DatabaseBundle"
                       displayNameKey="configurable.group.database.main.settings.display.name"
                       descriptionKey="configurable.group.database.main.settings.description"/>

    <frameworkSupport implementation="com.intellij.sql.SqlFrameworkSupportProvider"/>
    <searchEverywhereContributor implementation="com.intellij.database.actions.DbSETablesContributor$Factory"/>
  </extensions>

  <actions resource-bundle="messages.DatabaseBundle">
    <action id="GotoDatabaseObject" class="com.intellij.database.actions.GotoDatabaseObjectAction">
      <override-text place="MainMenu"/>
      <add-to-group group-id="GoToTargetEx"/>
    </action>
  </actions>
</idea-plugin> lib/database-plugin.jar lib/jdbc-console.jar lib/database-openapi.jar "lib/aether-dependency-resolver.jar %lib/maven-resolver-transport-file.jar %lib/maven-resolver-transport-http.jar &lib/maven-resolver-connector-basic.jar  dev  <idea-plugin implementation-detail="true">
  <id>com.intellij.dev</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <vendor>JetBrains</vendor>
  <description>This plugin provides actions which make sense in debug IDE instance, such as "View PSI Structure".</description>

  <content>
    <module name="intellij.dev.psiViewer"/>
    <module name="intellij.dev.codeInsight"/>
    <module name="intellij.java.dev"/>
    <module name="intellij.groovy.dev"/>
    <module name="intellij.kotlin.dev"/>
    <module name="intellij.platform.statistics.devkit"/>
  </content>
</idea-plugin>
 lib/dev.jar  uml  S<idea-plugin package="com.intellij.uml">
  <id>com.intellij.diagram</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>Diagrams</name>
  <vendor>JetBrains</vendor>
  <category>Other Tools</category>

  <resource-bundle>messages.DiagramBundle</resource-bundle>

  <description><![CDATA[
  <p>Provides API for all IntelliJ-based IDEs native diagram types.</p>

  <p>
    On its own it includes support for fully automatic generation of the following diagrams from source code:
    <ul>
      <li>UML Class diagrams (currently for Java and Kotlin JVM)</li>
      <li>IDEA Module dependencies diagrams</li>
      <li>Git Diff changes on UML Class diagrams (currently for Java only)</li>
    </ul>
  </p>
  ]]></description>

  <content>
    <module name="intellij.diagram.java"/>
    <module name="intellij.diagram.impl/vcs"/>
    <module name="intellij.diagram.properties"/>
  </content>

  <dependencies>
    <plugin id="com.intellij.modules.ultimate"/>
  </dependencies>

  <extensionPoints>
    <extensionPoint qualifiedName="com.intellij.diagram.Provider" interface="com.intellij.diagram.DiagramProvider" dynamic="true"/>
    <extensionPoint qualifiedName="com.intellij.diagram.changesProvider" interface="com.intellij.diagram.DiagramChangesProvider"
                    dynamic="true"/>
  </extensionPoints>

  <extensions defaultExtensionNs="com.intellij">
    <actionPromoter implementation="com.intellij.uml.DiagramActionPromoter"/>
    <applicationService serviceInterface="com.intellij.diagram.DiagramBuilderFactory"
                        serviceImplementation="com.intellij.uml.UmlGraphBuilderFactory"/>
    <applicationService serviceImplementation="com.intellij.diagram.settings.DiagramConfiguration"/>
    <applicationService serviceInterface="com.intellij.diagram.DiagramNodeEditingManager"
                        serviceImplementation="com.intellij.uml.editors.DiagramNodeEditorManager"/>
    <applicationService serviceInterface="com.intellij.diagram.components.DiagramContainerUi"
                        serviceImplementation="com.intellij.uml.components.DiagramContainerUiImpl"/>
    <applicationService serviceInterface="com.intellij.diagram.util.DiagramAlgorithmsService"
                        serviceImplementation="com.intellij.uml.utils.DiagramAlgorithmServiceImpl"/>
    <applicationService serviceInterface="com.intellij.diagram.util.DiagramExportService"
                        serviceImplementation="com.intellij.uml.export.DiagramExportServiceImpl"/>
    <applicationService serviceInterface="com.intellij.diagram.actions.DiagramToolbarActionsProvider"
                        serviceImplementation="com.intellij.uml.core.actions.DiagramToolbarActionsProviderImpl"/>

    <applicationService serviceInterface="com.intellij.diagram.v2.GraphChartFactory"
                        serviceImplementation="com.intellij.uml.v2.GraphChartFactoryImpl"/>
    <applicationService serviceInterface="com.intellij.diagram.v2.layout.GraphChartLayoutService"
                        serviceImplementation="com.intellij.uml.v2.layout.GraphChartLayoutServiceImpl"/>
    <applicationService serviceInterface="com.intellij.diagram.v2.painting.GraphChartPainterService"
                        serviceImplementation="com.intellij.uml.v2.painting.GraphChartPainterServiceImpl"/>
    <applicationService serviceInterface="com.intellij.diagram.v2.dsl.GraphChartEdgeStyleKtBuilderFactory"
                        serviceImplementation="com.intellij.uml.v2.dsl.GraphChartEdgeStyleKtBuilderFactoryImpl"/>
    <applicationService serviceInterface="com.intellij.diagram.v2.dsl.GraphChartGroupNodeStyleKtBuilderFactory"
                        serviceImplementation="com.intellij.uml.v2.dsl.GraphChartGroupNodeStyleKtBuilderFactoryImpl"/>

    <diagram.Provider implementation="com.intellij.uml.v2.oldapiadapters.GraphChartAdapterForDiagramProvider"/>

    <applicationConfigurable groupId="tools" instance="com.intellij.uml.settings.UmlConfigurable" id="reference.settings.ide.settings.uml"
                             bundle="messages.DiagramBundle" key="configurable.UmlConfigurable.display.name"/>

    <editorNotificationProvider implementation="com.intellij.uml.EmptyDiagramProvider$EditorNotificationProviderImpl"/>
    <editorTabTitleProvider implementation="com.intellij.uml.editors.DiagramEditorTabTitleProvider"/>

    <fileEditorProvider id="UmlEditorProvider" implementation="com.intellij.uml.UmlEditorProvider"/>
    <fileType name="UML" implementationClass="com.intellij.diagram.DiagramFileType" fieldName="INSTANCE" extensions="uml"/>
    <fileIconProvider implementation="com.intellij.uml.DiagramFileIconProvider"/>

    <httpRequestHandler implementation="com.intellij.uml.export.OpenDiagramInWebEditorService"/>

    <projectUndoProvider implementation="com.intellij.uml.undo.UmlUndoProvider"/>
    <projectService serviceInterface="com.intellij.diagram.DiagramActionsManager"
                    serviceImplementation="com.intellij.uml.UmlActionsManagerImpl"/>
    <projectService serviceInterface="com.intellij.openapi.graph.builder.GraphEditModeFactory"
                    serviceImplementation="com.intellij.uml.v2.builder.GraphChartEditModeFactoryImpl"
                    overrides="true"/>

    <refactoring.elementListenerProvider implementation="com.intellij.uml.undo.UmlRefactoringElementListenerProvider"/>

    <statistics.counterUsagesCollector implementationClass="com.intellij.uml.statistics.DiagramUsagesCollector"/>
    <statistics.validation.customValidationRule implementation="com.intellij.uml.statistics.DiagramProviderRule"/>

    <virtualFileSystem key="uml" implementationClass="com.intellij.uml.UmlVirtualFileSystem"/>

    <colorSettingsPage implementation="com.intellij.diagram.DiagramColorsSettingsPage"/>
    <additionalTextAttributes scheme="Default" file="colorSchemes/DiagramDefault.xml"/>
    <additionalTextAttributes scheme="Darcula" file="colorSchemes/DiagramDarcula.xml"/>

    <refactoring.copyHandler implementation="com.intellij.uml.core.actions.fs.DiagramCopyHandler" order="before copyFilesOrDirectories"/>

    <registryKey key="diagrams.use.snapping" defaultValue="true"
                 description="Print helping snap lines when noes are being moved"/>

    <registryKey key="diagrams.use.bridge.calculator" defaultValue="true"
                 description="When edges are crossing bridges are painted"/>

    <registryKey key="diagrams.rendering.antialiasing" defaultValue="true"
                 description="Whether to use global antialiasing (better quality, slower rendering)"/>

    <registryKey key="diagrams.rendering.use.render.cache" defaultValue="true"
                 description="Each diagram node is rendered once and is saved to the image which is being printed then"/>

    <registryKey key="diagrams.rendering.use.volatile.images.for.cache" defaultValue="false"
                 description="Render cache for diagram node use volatile images with acceleration which are stored in VRAM if possible"/>

    <registryKey key="diagrams.rendering.max.node.size.to.cache" defaultValue="1000000000"
                 description="Render cache will not be applied for nodes which size in pixels exceeds specified value"/>

    <registryKey key="diagrams.uml.java.use.psi.modification.tracker" defaultValue="false"
                 description="Whether to track Java/Kotlin code changes to automatically rebuild diagram"/>

    <registryKey key="diagrams.uml.python.use.psi.modification.tracker" defaultValue="false"
                 description="Whether to track Python code changes to automatically rebuild diagram"/>

    <registryKey key="diagrams.uml.cidr.use.psi.modification.tracker" defaultValue="false"
                 description="Whether to track cidr code changes to automatically rebuild diagram"/>

    <registryKey key="diagrams.relayout.on.category.change" defaultValue="true"
                 description="Whether to relayout when content categories are changed"/>
    <iconMapper mappingFile="UMLIconMappings.json"/>
  </extensions>

  <actions>
    <group id="UML.EditorGroup" popup="true" icon="AllIcons.FileTypes.Diagram" class="com.intellij.ide.actions.NonEmptyActionGroup">
      <add-to-group group-id="EditorPopupMenu" anchor="last"/>
    </group>
    <group id="UML.Group.Simple" popup="true" icon="AllIcons.FileTypes.Diagram"/>
    <group id="UML.Group" popup="true" icon="AllIcons.FileTypes.Diagram" class="com.intellij.ide.actions.NonEmptyActionGroup">
      <add-to-group group-id="ProjectViewPopupMenu" anchor="last"/>
      <add-to-group group-id="TypeHierarchyPopupMenu" anchor="last"/>
      <add-to-group group-id="StructureViewPopupMenu" anchor="last"/>
      <add-to-group group-id="NavbarPopupMenu" anchor="last"/>
    </group>

    <group id="Uml.NewGroup" popup="true" class="com.intellij.ide.actions.NonTrivialActionGroup" icon="AllIcons.FileTypes.Diagram">
      <!-- Should be available from Search Everywhere -->
    </group>

    <action id="Uml.NewElement" class="com.intellij.uml.core.actions.UmlNewAction" use-shortcut-of="NewElement"/>
    <action id="Uml.NodeIntentions" class="com.intellij.diagram.actions.DiagramIntentionAction" keymap="$default"
            use-shortcut-of="ShowIntentionActions"/>

    <action id="Diagram.DeleteSelection" class="com.intellij.uml.core.actions.DiagramDeleteSelectionAction" use-shortcut-of="$Delete"/>

    <action id="ShowUmlDiagram" class="com.intellij.uml.core.actions.ShowDiagram$Default" icon="AllIcons.FileTypes.Diagram">
      <keyboard-shortcut first-keystroke="control shift alt U" keymap="$default"/>
      <add-to-group group-id="UML.EditorGroup" anchor="last"/>
      <add-to-group group-id="UML.Group" anchor="last"/>
      <add-to-group group-id="UML.Group.Simple" anchor="last"/>
      <abbreviation value="uml"/>
    </action>
    <action id="ShowUmlDiagramPopup" class="com.intellij.uml.core.actions.ShowDiagramPopup$Default" icon="AllIcons.FileTypes.Diagram">
      <keyboard-shortcut first-keystroke="control alt U" keymap="$default"/>
      <add-to-group group-id="UML.EditorGroup" anchor="last"/>
      <add-to-group group-id="UML.Group" anchor="last"/>
      <add-to-group group-id="UML.Group.Simple" anchor="last"/>
    </action>

    <action id="Diagram.Layout.CustomLayouter" class="com.intellij.diagram.actions.DiagramCustomLayouterAction">
      <add-to-group group-id="Graph.CommonLayoutGroup" anchor="last"/>
    </action>

    <action id="Diagram.SelectAll" class="com.intellij.uml.core.actions.DiagramSelectAll" use-shortcut-of="$SelectAll"/>
    <action id="Diagram.DeselectAll" class="com.intellij.uml.core.actions.DiagramDeselectAll">
      <keyboard-shortcut first-keystroke="control alt A" keymap="$default"/>
    </action>

    <action id="Uml.CollapseNodes" class="com.intellij.diagram.actions.CollapseNodesAction">
      <keyboard-shortcut first-keystroke="C" keymap="$default"/>
    </action>
    <action id="Uml.ExpandNodes" class="com.intellij.diagram.actions.ExpandNodesAction">
      <keyboard-shortcut first-keystroke="E" keymap="$default"/>
    </action>

    <action id="UML.SaveDiagram" class="com.intellij.uml.core.actions.fs.SaveDiagramAction">
      <add-to-group group-id="Graph.DefaultGraphToolbar" anchor="before" relative-to-action="Graph.ExportToFile"/>
    </action>
    <action id="UML.ShowStructure" class="com.intellij.uml.core.actions.UmlViewStructure" use-shortcut-of="FileStructurePopup"/>
    <action id="UML.Find" class="com.intellij.uml.core.actions.UmlViewStructure" use-shortcut-of="Find"/>

    <action
      id="Diagram.RefreshDataModelManually"
      class="com.intellij.diagram.actions.DiagramRefreshDataModelManuallyAction"
      icon="AllIcons.Actions.Refresh"/>

    <action
      id="Diagram.OpenSettings"
      class="com.intellij.uml.core.actions.DiagramOpenSettingsAction"
      icon="AllIcons.General.GearPlain"/>

    <action
      id="Diagram.SearchItemOnWeb"
      class="com.intellij.uml.core.actions.DiagramSearchItemOnWebAction"
      icon="AllIcons.Actions.Search"/>

    <group id="Uml.PsiElement.Actions" popup="false">
      <reference ref="EditSource"/>
      <reference ref="FindUsages"/>
      <reference ref="RenameElement"/>
      <separator/>
    </group>

    <group id="Uml.Refactoring" class="com.intellij.uml.core.actions.DiagramRefactoringGroup" popup="true"/>

    <group id="UML.SourceActionsGroup" class="com.intellij.uml.core.actions.DiagramSourceActionsGroup" popup="true">
      <reference ref="$Copy"/>
      <reference ref="CopyReference"/>
      <separator/>
      <reference ref="FindUsages"/>
      <group id="Uml.SourceActionsGroup.QuickActions" popup="true">
        <reference ref="QuickActions"/>
      </group>
      <separator/>
      <reference ref="EditSource"/>
      <group id="Uml.SourceActionsGroup.GoTo" popup="true">
        <reference ref="ShowNavBar"/>
        <reference ref="GotoDeclaration"/>
        <reference ref="GotoImplementation"/>
        <reference ref="GotoTypeDeclaration"/>
        <reference ref="GotoSuperMethod"/>
        <reference ref="GotoRelated"/>
        <reference ref="GotoTest"/>
      </group>
      <reference ref="RevealGroup"/>
      <separator/>
      <reference ref="VersionControlsGroup"/>
      <separator/>
      <reference ref="Diagram.SearchItemOnWeb"/>
      <reference ref="ExternalToolsGroup"/>
    </group>

    <group id="Diagram.MergeEdgesGroup" popup="true">
      <reference ref="Graph.MergeEdges.BySources"/>
      <reference ref="Graph.MergeEdges.ByTargets"/>
    </group>

    <group id="Diagram.AppearanceGroup" popup="true">
      <reference ref="Graph.ShowHideGrid"/>
      <reference ref="Graph.Show.Edge.Labels"/>
      <reference ref="Graph.Show.Bridges"/>
      <reference ref="Diagram.MergeEdgesGroup"/>
      <reference ref="Graph.EdgeRealizerGroup"/>
    </group>

    <group id="Diagram.ExportToFileGroup" icon="AllIcons.Actions.MenuSaveall" popup="true">
      <action id="Diagram.ExportToFileGroup.Graphml" class="com.intellij.diagram.actions.export.disk.DiagramExportToGraphmlAction"/>
      <action id="Diagram.ExportToFileGroup.Mxgraph" class="com.intellij.diagram.actions.export.disk.DiagramExportToMxgraphAction"/>
      <action id="Diagram.ExportToFileGroup.Dot" class="com.intellij.diagram.actions.export.disk.DiagramExportToDotAction"/>
      <action id="Diagram.ExportToFileGroup.DotWithPositions"
              class="com.intellij.diagram.actions.export.disk.DiagramExportToDotWithPositionsAction"/>
      <action id="Diagram.ExportToFileGroup.Mermaid" class="com.intellij.diagram.actions.export.disk.DiagramExportToMermaidAction"/>
      <action id="Diagram.ExportToFileGroup.Plantuml" class="com.intellij.diagram.actions.export.disk.DiagramExportToPlantumlAction"/>
      <reference ref="UML.SaveDiagram"/>
    </group>

    <group id="Diagram.OpenInOnlineEditorGroup" icon="AllIcons.RunConfigurations.Web_app" popup="true">
      <!--suppress PluginXmlCapitalization -->
      <action id="Diagram.OpenInOnlineEditorGroup.Graphml"
              class="com.intellij.diagram.actions.export.online.DiagramOpenInGraphmlWebEditorAction"/>
      <!--suppress PluginXmlCapitalization -->
      <action id="Diagram.OpenInOnlineEditorGroup.Mxgraph"
              class="com.intellij.diagram.actions.export.online.DiagramOpenInMxgraphWebEditorAction"/>
      <action id="Diagram.OpenInOnlineEditorGroup.Dot"
              class="com.intellij.diagram.actions.export.online.DiagramOpenInDotWebEditorAction"/>
      <action id="Diagram.OpenInOnlineEditorGroup.DotWithPositions"
              class="com.intellij.diagram.actions.export.online.DiagramOpenInDotWebEditorWithPositionsAction"/>
      <!--suppress PluginXmlCapitalization -->
      <action id="Diagram.OpenInOnlineEditorGroup.Mermaid"
              class="com.intellij.diagram.actions.export.online.DiagramOpenInMermaidWebEditorAction"/>
      <action id="Diagram.OpenInOnlineEditorGroup.Plantuml"
              class="com.intellij.diagram.actions.export.online.DiagramOpenInPlantumlWebEditorAction"/>
    </group>

    <group id="Diagram.CopyToClipboardGroup" icon="AllIcons.Actions.Copy" popup="true">
      <action id="Diagram.CopyToClipboardGroup.Mermaid"
              class="com.intellij.diagram.actions.export.clipboard.DiagramCopyToClipboardMermaidAction"/>
      <action id="Diagram.CopyToClipboardGroup.Plantuml"
              class="com.intellij.diagram.actions.export.clipboard.DiagramCopyToClipboardPlantumlAction"/>
      <action id="Diagram.CopyToClipboardGroup.Dot" class="com.intellij.diagram.actions.export.clipboard.DiagramCopyToClipboardDotAction"/>
      <action id="Diagram.CopyToClipboardGroup.DotWithPositions"
              class="com.intellij.diagram.actions.export.clipboard.DiagramCopyToClipboardDotWithPositionsAction"/>
    </group>

    <group id="Diagram.ExportGroup" icon="AllIcons.ToolbarDecorator.Export" popup="true">
      <reference ref="Diagram.OpenInOnlineEditorGroup"/>
      <reference ref="Diagram.CopyToClipboardGroup"/>
      <reference ref="Diagram.ExportToFileGroup"/>
      <reference ref="Graph.ExportToFile"/>
      <reference ref="Print"/>
    </group>

    <group id="Diagram.ExportAndCopyGroup" popup="false">
      <reference ref="Graph.CopyEntireDiagramToClipboard"/>
      <reference ref="Graph.CopyDiagramSelectionToClipboard"/>
      <reference ref="Diagram.ExportGroup"/>
    </group>

    <group id="Diagram.AnalyzeGraphGroup" class="com.intellij.ide.actions.NonTrivialActionGroup" popup="true">
      <action id="Diagram.AnalyzeGraph.ShowCharacteristics"
              class="com.intellij.uml.core.actions.analysis.DiagramShowGraphCharacteristicsAction"/>
      <action id="Diagram.AnalyzeGraph.DropFocus" class="com.intellij.uml.core.actions.analysis.DiagramDropFocusAction"/>
      <action id="Diagram.AnalyzeGraph.FocusOnSelectedNodes"
              class="com.intellij.uml.core.actions.analysis.DiagramFocusViewOnSelectedNodesAction"/>
      <action id="Diagram.AnalyzeGraph.FocusOnNodeNeighbourhood"
              class="com.intellij.uml.core.actions.analysis.DiagramFocusViewOnNodeNeighbourhoodAction"/>
      <action id="Diagram.AnalyzeGraph.FocusOnPathsBetweenTwoNodes"
              class="com.intellij.uml.core.actions.analysis.DiagramFocusViewOnPathsBetweenTwoNodesAction"/>
      <action id="Diagram.AnalyzeGraph.FocusOnCycles"
              class="com.intellij.uml.core.actions.analysis.DiagramFocusViewOnCyclesAction"/>
      <action id="Diagram.AnalyzeGraph.DropCentralityValues"
              class="com.intellij.uml.core.actions.analysis.DiagramDropCentralityValuesAction"/>
      <action id="Diagram.AnalyzeGraph.MeasureCentrality"
              class="com.intellij.uml.core.actions.analysis.DiagramMeasureCentralityAction"/>
      <action id="Diagram.AnalyzeGraph.DropClustering"
              class="com.intellij.uml.core.actions.analysis.DiagramDropClusteringAction"/>
      <action id="Diagram.AnalyzeGraph.AutoClustering"
              class="com.intellij.uml.core.actions.analysis.DiagramAutoClusteringAction"/>
    </group>

    <group id="UML.DefaultGraphPopup">
      <reference ref="Diagram.AnalyzeGraphGroup"/>
      <reference ref="Uml.Refactoring"/>
      <separator/>
      <reference ref="Graph.AlignNodesGroup"/>
      <reference ref="Graph.DistributeNodesGroup"/>
      <reference ref="Graph.CommonLayoutGroup"/>
      <reference ref="Graph.LayoutOrientationGroup"/>
      <reference ref="Graph.ApplyCurrentLayout"/>
      <reference ref="Graph.RouteEdges"/>
      <separator/>
      <reference ref="Diagram.AppearanceGroup"/>
      <separator/>
      <reference ref="Graph.BehaviourGroup"/>
      <separator/>
      <reference ref="Diagram.ExportAndCopyGroup"/>
    </group>

    <group id="Diagram.DefaultGraphToolbar">
      <reference ref="Graph.Current.Node.Dependencies.Filter"/>
      <separator/>
      <reference ref="Graph.ZoomIn"/>
      <reference ref="Graph.ZoomOut"/>
      <reference ref="Graph.ActualSize"/>
      <reference ref="Graph.FitContent"/>
      <separator/>
      <reference ref="Graph.ApplyCurrentLayout"/>
      <reference ref="Graph.RouteEdges"/>
      <separator/>
      <reference ref="Graph.CopyEntireDiagramToClipboard"/>
      <reference ref="Graph.CopyDiagramSelectionToClipboard"/>
      <reference ref="Diagram.ExportGroup"/>
      <separator/>
      <reference ref="Diagram.RefreshDataModelManually"/>
      <reference ref="Diagram.OpenSettings"/>
      <reference ref="ContextHelp"/>
    </group>

    <group id="Uml.NodeCellEditorPopup" popup="false">
      <reference ref="$Copy"/>
      <reference ref="CopyReference"/>
      <separator/>
      <reference ref="FindUsages"/>
      <group id="Uml.NodeCellEditorPopup.QuickActions" popup="true">
        <reference ref="QuickActions"/>
      </group>
      <separator/>
      <reference ref="EditSource"/>
      <group id="Uml.NodeCellEditorPopup.GoTo" popup="true">
        <reference ref="ShowNavBar"/>
        <reference ref="GotoDeclaration"/>
        <reference ref="GotoImplementation"/>
        <reference ref="GotoTypeDeclaration"/>
        <reference ref="GotoSuperMethod"/>
        <reference ref="GotoRelated"/>
        <reference ref="GotoTest"/>
      </group>
      <reference ref="RevealGroup"/>
      <separator/>
      <reference ref="VersionControlsGroup"/>
      <separator/>
      <reference ref="Diagram.SearchItemOnWeb"/>
      <reference ref="ExternalToolsGroup"/>
    </group>
  </actions>
</idea-plugin>
 lib/uml-support.jar  &dynamicPluginsTests-performanceTesting  <idea-plugin implementation-detail="true">
  <name>Performance Testing (Dynamic Plugins)</name>
  <id>com.jetbrains.performancePlugin.dynamicPlugins</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <vendor>JetBrains</vendor>

  <description><![CDATA[
      Plugin extends the plugin Performance Testing and has commands which
      help to test unloadability of Dynamic Plugins.
      ]]></description>

  <depends>com.jetbrains.performancePlugin</depends>

  <extensions defaultExtensionNs="com.jetbrains">
    <performancePlugin.commandProvider implementation="org.jetbrains.dynamicPlugins.performanceTesting.DynamicPluginsCommandProvider"/>
  </extensions>
</idea-plugin> .lib/dynamicPluginsTests-performanceTesting.jar  editorconfig  g<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<idea-plugin>
  <id>org.editorconfig.editorconfigjetbrains</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>EditorConfig</name>
  <category>Other Tools</category>
  <vendor>JetBrains</vendor>

  <description><![CDATA[
<p>Handles properties in <i>.editorconfig</i> files and applies them to all supported languages in all JetBrains IDEs.

<h2>Features</h2>
<ul>
  <li>Code assistance for all supported properties, standard and extended
</ul>
<h2>Getting started</h2>
<p>For more information,
check the documentation for <a href="https://editorconfig.org/">EditorConfig</a> files and your <a href="https://www.jetbrains.com/help/">IDE</a>.
]]></description>

  <depends>com.intellij.modules.lang</depends>

  <actions resource-bundle="messages.EditorConfigBundle">
    <action id="NewEditorConfigFile" class="org.editorconfig.language.codeinsight.actions.CreateEditorConfigFileAction"/>
    <action id="CreateEditorConfigFile" class="org.editorconfig.configmanagement.create.CreateEditorConfigAction">
      <add-to-group group-id="NewGroup" anchor="after" relative-to-action="NewFromTemplate"/>
    </action>
      <action id="org.editorconfig.configmanagement.generate.EditorConfigGenerateLanguagePropertiesAction"
              class="org.editorconfig.configmanagement.generate.EditorConfigGenerateLanguagePropertiesAction">
          <add-to-group group-id="GenerateGroup" anchor="last"/>
      </action>
  </actions>

  <extensions defaultExtensionNs="com.intellij">
    <generalCodeStyleOptionsProvider instance="org.editorconfig.settings.EditorConfigConfigurable"/>
    <codeStyleSettingsProvider implementation="org.editorconfig.settings.EditorConfigConfigurable"/>
    <codeStyleSettingsModifier implementation="org.editorconfig.configmanagement.extended.EditorConfigCodeStyleSettingsModifier" order="first"/>
    <fileIndentOptionsProvider implementation="org.editorconfig.configmanagement.EditorConfigIndentOptionsProvider" order="first"/>
    <trailingSpacesOptionsProvider implementation="org.editorconfig.configmanagement.EditorConfigTrailingSpacesOptionsProvider" id="editorConfigTrailingSpacesOptionsProvider"/>
    <fileEditorProvider id="org.editorconfig.configmanagement.editor" implementation="org.editorconfig.configmanagement.editor.EditorConfigEditorProvider" fileType="EditorConfig"/>
    <codeInsight.lineMarkerProvider language="" implementationClass="org.editorconfig.configmanagement.editor.EditorConfigPreviewMarkerProvider"/>
    <gotoFileContributor implementation="org.editorconfig.configmanagement.finder.EditorConfigGotoFileContributor"/>
    <stripTrailingSpacesFilterFactory implementation="org.editorconfig.configmanagement.EditorConfigTrailingSpacesFilterFactory"/>
    <editorNotificationProvider implementation="org.editorconfig.configmanagement.editor.EditorConfigEditorNotificationProvider"/>

    <!-- Language support -->
    <fileType name="EditorConfig"
              language="EditorConfig"
              implementationClass="org.editorconfig.language.filetype.EditorConfigFileType"
              fieldName="INSTANCE"
              fileNames=".editorconfig"/>
    <colorSettingsPage implementation="org.editorconfig.language.highlighting.EditorConfigColorSettingsPage"/>
    <annotator
        language="EditorConfig"
        implementationClass="org.editorconfig.language.codeinsight.annotators.EditorConfigAnnotator"/>
    <enterHandlerDelegate implementation="org.editorconfig.language.codeinsight.actions.EnterInEditorConfigFileHandler"/>
    <vetoRenameCondition implementation="org.editorconfig.language.codeinsight.refactoring.EditorConfigVetoRenameCondition"/>
    <completion.contributor
        language="EditorConfig"
        id="EditorConfigCompletionContributor"
        order="last"
        implementationClass="org.editorconfig.language.codeinsight.completion.EditorConfigCompletionContributor"/>
    <completion.contributor
        language="EditorConfig"
        id="EditorConfigUnsetContributor"
        order="last"
        implementationClass="org.editorconfig.configmanagement.completion.EditorConfigUnsetCompletionContributor"/>
    <langCodeStyleSettingsProvider implementation="org.editorconfig.language.codestyle.EditorConfigLanguageCodeStyleSettingsProvider"/>
    <statementUpDownMover implementation="org.editorconfig.language.codeinsight.actions.EditorConfigStatementUpDownMover"/>
    <moveLeftRightHandler
        language="EditorConfig"
        implementationClass="org.editorconfig.language.codeinsight.actions.EditorConfigMoveElementLeftRightHandler"/>
    <spellchecker.support
        language="EditorConfig"
        implementationClass="org.editorconfig.language.spellchecker.EditorConfigSpellcheckerStrategy"/>
    <typedHandler implementation="org.editorconfig.language.codeinsight.actions.EditorConfigTypedHandlerDelegate"/>
    <findUsagesHandlerFactory implementation="org.editorconfig.language.codeinsight.findusages.EditorConfigFindUsagesHandlerFactory"/>
    <breadcrumbsInfoProvider implementation="org.editorconfig.language.breadcrumbs.EditorConfigBreadcrumbsProvider"/>
    <renameHandler implementation="org.editorconfig.language.codeinsight.refactoring.EditorConfigRenameHandler"/>
    <elementDescriptionProvider
        implementation="org.editorconfig.language.codeinsight.documentation.EditorConfigElementDescriptionProvider"/>
    <editorNotificationProvider implementation="org.editorconfig.language.messages.EditorConfigWrongFileNameNotificationProvider"/>
    <editorNotificationProvider implementation="org.editorconfig.language.messages.EditorConfigWrongFileEncodingNotificationProvider"/>
    <fileBasedIndex implementation="org.editorconfig.language.index.EditorConfigIdentifierIndex"/>
    <gotoSymbolContributor implementation="org.editorconfig.language.codeinsight.findusages.EditorConfigGoToSymbolContributor"/>
    <gotoTargetRendererProvider
        implementation="org.editorconfig.language.codeinsight.actions.navigation.EditorConfigGotoTargetRendererProvider"/>
    <definitionsScopedSearch
        implementation="org.editorconfig.language.codeinsight.actions.navigation.EditorConfigHeaderImplementationSearch"/>
    <definitionsScopedSearch
        implementation="org.editorconfig.language.codeinsight.actions.navigation.EditorConfigFlatOptionKeyImplementationSearch"/>
    <targetElementEvaluator
        language="EditorConfig"
        implementationClass="org.editorconfig.language.psi.reference.EditorConfigTargetElementEvaluator"/>

    <fileEncodingProvider implementation="org.editorconfig.configmanagement.ConfigEncodingManager"/>

    <utf8BomOptionProvider implementation="org.editorconfig.configmanagement.EditorConfigUtf8BomOptionProvider"/>

    <!-- Inspections -->
    <lang.inspectionSuppressor
        language="EditorConfig"
        implementationClass="org.editorconfig.language.codeinsight.suppression.EditorConfigInspectionSuppressor"/>
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigDeprecatedDescriptor"
        bundle="messages.EditorConfigBundle"
        key="inspection.element.deprecated.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="WARNING"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigDeprecatedDescriptorInspection"/>
    <localInspection
      language="EditorConfig"
      shortName="EditorConfigVerifyByCore"
      bundle="messages.EditorConfigBundle"
      key="inspection.verify.by.core.name"
      groupKey="editorconfig.inspection.group"
      enabledByDefault="true"
      level="ERROR"
      implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigVerifyByCoreInspection"/>

    <!-- Root declaration inspections -->
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigRootDeclarationUniqueness"
        bundle="messages.EditorConfigBundle"
        key="inspection.root-declaration.uniqueness.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="ERROR"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigRootDeclarationUniquenessInspection"/>
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigRootDeclarationCorrectness"
        bundle="messages.EditorConfigBundle"
        key="inspection.root-declaration.correctness.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="ERROR"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigRootDeclarationCorrectnessInspection"/>

    <!-- Section inspections -->
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigEmptySection"
        bundle="messages.EditorConfigBundle"
        key="inspection.section.emptiness.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="WARNING"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigEmptySectionInspection"/>

    <!-- Header inspections -->
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigHeaderUniqueness"
        bundle="messages.EditorConfigBundle"
        key="inspection.section.uniqueness.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="WARNING"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigHeaderUniquenessInspection"/>
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigPatternEnumerationRedundancy"
        bundle="messages.EditorConfigBundle"
        key="inspection.pattern-enumeration.redundant.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="ERROR"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigPatternEnumerationRedundancyInspection"/>
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigSpaceInHeader"
        bundle="messages.EditorConfigBundle"
        key="inspection.space.in.header.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="WEAK WARNING"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigSpaceInHeaderInspection"/>
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigNoMatchingFiles"
        bundle="messages.EditorConfigBundle"
        key="inspection.no-matching-files.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="WARNING"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigNoMatchingFilesInspection"/>
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigNumerousWildcards"
        bundle="messages.EditorConfigBundle"
        key="inspection.header.many.wildcards.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="WEAK WARNING"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigNumerousWildcardsInspection"/>
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigEmptyHeader"
        bundle="messages.EditorConfigBundle"
        key="inspection.header.empty.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="ERROR"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigEmptyHeaderInspection"/>
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigPartialOverride"
        bundle="messages.EditorConfigBundle"
        key="inspection.header.partially.overridden.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="WEAK WARNING"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigPartialOverrideInspection"/>

    <!-- Pattern inspections -->
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigPatternRedundancy"
        bundle="messages.EditorConfigBundle"
        key="inspection.pattern.redundant.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="WARNING"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigPatternRedundancyInspection"/>
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigWildcardRedundancy"
        bundle="messages.EditorConfigBundle"
        key="inspection.pattern.double-asterisk-sibling.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="WARNING"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigWildcardRedundancyInspection"/>

    <!-- Charclass inspections -->
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigCharClassLetterRedundancy"
        bundle="messages.EditorConfigBundle"
        key="inspection.charclass.duplicate.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="WARNING"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigCharClassLetterRedundancyInspection"/>
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigCharClassRedundancy"
        bundle="messages.EditorConfigBundle"
        key="inspection.charclass.redundant.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="WARNING"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigCharClassPatternRedundancyInspection"/>

    <!-- Option inspections -->
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigShadowedOption"
        bundle="messages.EditorConfigBundle"
        key="inspection.option.shadowed.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="WARNING"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigShadowedOptionInspection"/>
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigShadowingOption"
        bundle="messages.EditorConfigBundle"
        key="inspection.option.shadowing.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="WARNING"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigShadowingOptionInspection"/>
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigOptionRedundancy"
        bundle="messages.EditorConfigBundle"
        key="inspection.option.redundant.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="WARNING"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigOptionRedundancyInspection"/>

    <!-- Key inspections -->
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigKeyCorrectness"
        bundle="messages.EditorConfigBundle"
        key="inspection.key.correctness.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="WARNING"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigKeyCorrectnessInspection"/>

    <!-- Value inspections -->
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigValueCorrectness"
        bundle="messages.EditorConfigBundle"
        key="inspection.value.correctness.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="ERROR"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigValueCorrectnessInspection"/>
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigValueUniqueness"
        bundle="messages.EditorConfigBundle"
        key="inspection.value.uniqueness.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="ERROR"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigValueUniquenessInspection"/>

    <!-- Reference inspections -->
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigReferenceCorrectness"
        bundle="messages.EditorConfigBundle"
        key="inspection.reference.correctness.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="ERROR"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigReferenceCorrectnessInspection"/>

    <!-- Declaration inspections -->
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigUnusedDeclaration"
        bundle="messages.EditorConfigBundle"
        key="inspection.declaration.unused.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="WARNING"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigUnusedDeclarationInspection"/>
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigMissingRequiredDeclaration"
        bundle="messages.EditorConfigBundle"
        key="inspection.declaration.missing.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="ERROR"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigMissingRequiredDeclarationInspection"/>

    <!-- Values list inspections -->
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigListAcceptability"
        bundle="messages.EditorConfigBundle"
        key="inspection.value.list.acceptability.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="ERROR"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigListAcceptabilityInspection"/>
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigUnexpectedComma"
        bundle="messages.EditorConfigBundle"
        key="inspection.value.list.comma.unexpected.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="ERROR"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigUnexpectedCommaInspection"/>

    <!-- Values pair inspection -->
    <localInspection
        language="EditorConfig"
        shortName="EditorConfigPairAcceptability"
        bundle="messages.EditorConfigBundle"
        key="inspection.value.pair.acceptability.name"
        groupKey="editorconfig.inspection.group"
        enabledByDefault="true"
        level="ERROR"
        implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigPairAcceptabilityInspection"/>

    <!-- Intention actions -->
    <intentionAction>
      <language>EditorConfig</language>
      <className>org.editorconfig.language.codeinsight.actions.intention.EditorConfigInvertValueIntention</className>
      <bundleName>messages.EditorConfigBundle</bundleName>
      <categoryKey>editorconfig</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>EditorConfig</language>
      <className>org.editorconfig.language.codeinsight.actions.intention.EditorConfigAddDeclarationPartIntention</className>
      <bundleName>messages.EditorConfigBundle</bundleName>
      <categoryKey>editorconfig</categoryKey>
    </intentionAction>

    <!-- Services -->
    <projectService
        serviceInterface="org.editorconfig.language.services.EditorConfigOptionDescriptorManager"
        serviceImplementation="org.editorconfig.language.services.impl.EditorConfigOptionDescriptorManagerImpl"/>
    <projectService
        serviceInterface="org.editorconfig.language.services.EditorConfigElementFactory"
        serviceImplementation="org.editorconfig.language.services.impl.EditorConfigElementFactoryImpl"/>
    <projectService
        serviceInterface="org.editorconfig.language.services.EditorConfigFileHierarchyService"
        serviceImplementation="org.editorconfig.language.services.impl.EditorConfigFileHierarchyServiceImpl"/>

    <schemeExporter
        nameKey="scheme.exporter.target.name"
        nameBundle="messages.EditorConfigBundle"
        schemeClass="com.intellij.psi.codeStyle.CodeStyleScheme"
        implementationClass="org.editorconfig.configmanagement.export.EditorConfigExporter"/>
    <notificationGroup id="editorconfig" displayType="BALLOON" bundle="messages.EditorConfigBundle" key="notification.group.error"/>
    <notificationGroup id="EditorConfig" displayType="STICKY_BALLOON" bundle="messages.EditorConfigBundle" key="notification.group.disabled"/>
    <localInspection implementationClass="org.editorconfig.configmanagement.EditorConfigEncodingInspection"
                     bundle="messages.EditorConfigBundle"
                     key="inspection.file.encoding.mismatch.name"
                     enabledByDefault="true"
                     groupKey="editorconfig.inspection.group"/>

    <statistics.counterUsagesCollector implementationClass="org.editorconfig.configmanagement.EditorConfigUsagesCollector"/>
  </extensions>


  <extensions defaultExtensionNs="com.intellij.lang">
    <syntaxHighlighterFactory
        language="EditorConfig"
        implementationClass="org.editorconfig.language.highlighting.EditorConfigSyntaxHighlighterFactory"/>
    <parserDefinition
        language="EditorConfig"
        implementationClass="org.editorconfig.language.parser.EditorConfigParserDefinition"/>
    <braceMatcher
        language="EditorConfig"
        implementationClass="org.editorconfig.language.codeinsight.EditorConfigBraceMatcher"/>
    <commenter
        language="EditorConfig"
        implementationClass="org.editorconfig.language.codeinsight.EditorConfigCommenter"/>
    <foldingBuilder
        language="EditorConfig"
        implementationClass="org.editorconfig.language.codeinsight.EditorConfigFoldingBuilder"/>
    <formatter
        language="EditorConfig"
        implementationClass="org.editorconfig.language.formatting.EditorConfigFormattingModelBuilder"/>
    <psiStructureViewFactory
        language="EditorConfig"
        implementationClass="org.editorconfig.language.structureview.EditorConfigStructureViewFactory"/>
    <elementManipulator
        forClass="org.editorconfig.language.psi.EditorConfigHeader"
        implementationClass="org.editorconfig.language.psi.EditorConfigSilentElementManipulator"/>
    <elementManipulator
        forClass="org.editorconfig.language.psi.interfaces.EditorConfigDescribableElement"
        implementationClass="org.editorconfig.language.psi.EditorConfigSilentElementManipulator"/>
    <findUsagesProvider
        language="EditorConfig"
        implementationClass="org.editorconfig.language.codeinsight.findusages.EditorConfigFindUsagesProvider"/>
    <documentationProvider
        language="EditorConfig"
        implementationClass="org.editorconfig.language.codeinsight.documentation.EditorConfigDocumentationProvider"/>
    <tokenSeparatorGenerator
        language="EditorConfig"
        implementationClass="org.editorconfig.language.psi.EditorConfigTokenSeparatorGenerator"/>
  </extensions>


  <extensions defaultExtensionNs="com.intellij.codeInsight">
    <lineMarkerProvider
        language="EditorConfig"
        implementationClass="org.editorconfig.language.codeinsight.linemarker.EditorConfigOverridingKeyLineMarkerProvider"/>
    <lineMarkerProvider
        language="EditorConfig"
        implementationClass="org.editorconfig.language.codeinsight.linemarker.EditorConfigOverriddenKeyLineMarkerProvider"/>
    <lineMarkerProvider
        language="EditorConfig"
        implementationClass="org.editorconfig.language.codeinsight.linemarker.EditorConfigOverridingHeaderLineMarkerProvider"/>
    <lineMarkerProvider
        language="EditorConfig"
        implementationClass="org.editorconfig.language.codeinsight.linemarker.EditorConfigOverriddenHeaderLineMarkerProvider"/>
    <gotoSuper
        language="EditorConfig"
        implementationClass="org.editorconfig.language.codeinsight.actions.navigation.EditorConfigGotoSuperHandler"/>
  </extensions>

  <extensions defaultExtensionNs="editorconfig">
    <optionDescriptorProvider implementation="org.editorconfig.language.extensions.impl.EditorConfigBasicOptionDescriptorProvider"/>
    <optionDescriptorProvider implementation="org.editorconfig.language.extensions.impl.EditorConfigMsNamingOptionDescriptorProvider"/>
    <optionDescriptorProvider implementation="org.editorconfig.language.extensions.impl.EditorConfigMsMiscOptionDescriptorProvider"/>
    <optionDescriptorProvider implementation="org.editorconfig.language.extensions.impl.EditorConfigIncompleteReSharperOptionDescriptorProvider"/>
    <optionDescriptorProvider implementation="org.editorconfig.language.extensions.impl.EditorConfigMsFormattingOptionDescriptorProvider"/>
    <optionDescriptorProvider implementation="org.editorconfig.language.extensions.impl.EditorConfigMsLanguageOptionDescriptorProvider"/>
    <optionDescriptorProvider implementation="org.editorconfig.configmanagement.extended.IntellijConfigOptionDescriptorProvider"/>
  </extensions>


  <extensionPoints>
    <extensionPoint
        qualifiedName="editorconfig.optionDescriptorProvider"
        interface="org.editorconfig.language.extensions.EditorConfigOptionDescriptorProvider"/>
    <extensionPoint qualifiedName="editorconfig.exportProvider" interface="org.editorconfig.settings.EditorConfigExportProvider"/>
  </extensionPoints>

  <applicationListeners>
    <listener class="org.editorconfig.plugincomponents.EditorConfigModificationListener" topic="com.intellij.openapi.vfs.newvfs.BulkFileListener"/>
    <listener class="org.editorconfig.configmanagement.EditorConfigEncodingCache$VfsListener"
              topic="com.intellij.openapi.vfs.newvfs.BulkFileListener"/>
  </applicationListeners>

</idea-plugin>
 lib/editorconfig.jar  featuresTrainer  .<idea-plugin package="training">
  <id>training</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>IDE Features Trainer</name>
  <vendor>JetBrains</vendor>

  <description><![CDATA[
    <p>
      Learn basic shortcuts and essential features interactively - right inside the IDE.
      No need to read long manuals or look for screencasts.
      Just install this plugin, and open with the <b>Help | IDE Features Trainer</b> menu item.
    </p>
    <p/>
    <p>Found a bug or have a feature to suggest? Welcome to the tracker: <a href="https://youtrack.jetbrains.com/newIssue?project=IFT&description=**Description%3A**%20_Write%20description%20here_%0A%0A**Plugin%20version%3A**%20_Write%20plugin%20version%20here_">https://youtrack.jetbrains.com/issues/IFT</a></p>
    ]]></description>

  <dependencies>
    <plugin id="com.intellij.modules.lang"/>
  </dependencies>

  <content>
    <module name="intellij.vcs.git.featuresTrainer"/>
  </content>

  <resource-bundle>messages.LearnBundle</resource-bundle>

  <projectListeners>
    <listener class="training.editor.LearnProjectFileEditorListener"
              topic="com.intellij.openapi.fileEditor.FileEditorManagerListener"/>
  </projectListeners>

  <applicationListeners>
    <listener class="training.statistic.LearnProjectStateListener"
              topic="com.intellij.openapi.project.ProjectManagerListener"/>
  </applicationListeners>

  <extensionPoints>
    <extensionPoint name="ift.language.extension"
                    beanClass="training.lang.LangSupportBean" dynamic="true">
      <with attribute="implementationClass" implements="training.lang.LangSupport"/>
    </extensionPoint>

    <extensionPoint name="ift.learning.course" beanClass="com.intellij.lang.LanguageExtensionPoint" dynamic="true">
      <with attribute="implementationClass" implements="training.learn.course.LearningCourseBase"/>
    </extensionPoint>

    <extensionPoint name="ift.learning.commonCourse" beanClass="com.intellij.util.KeyedLazyInstanceEP" dynamic="true">
      <with attribute="implementationClass" implements="training.learn.course.LearningCourse"/>
    </extensionPoint>
  </extensionPoints>

  <extensions defaultExtensionNs="com.intellij">
    <statistics.validation.customValidationRule
      implementation="training.statistic.IdeFeaturesTrainerRuleValidator"/>
    <statistics.validation.customValidationRule
      implementation="training.statistic.SupportedLanguageRuleValidator"/>
    <statistics.validation.customValidationRule
      implementation="training.statistic.ActionIdRuleValidator"/>
    <statistics.validation.customValidationRule
      implementation="training.statistic.KeymapSchemeRuleValidator"/>
    <statistics.counterUsagesCollector implementationClass="training.statistic.StatisticBase"/>
    <applicationService
      serviceImplementation="training.statistic.LearnProjectState"/>

    <interactiveCourseFactory id="IFTInteractiveCourse" implementation="training.ui.welcomeScreen.IFTInteractiveCourse" order="first"/>

    <tipAndTrickPromotionFactory implementation="training.ui.IftTipAndTrickPromoter"/>

    <applicationService serviceImplementation="training.lang.LangManager"/>
    <applicationService serviceImplementation="training.learn.lesson.LessonStateBase"/>
    <toolWindow id="Learn"
                canCloseContents="true"
                icon="training.FeaturesTrainerIcons.FeatureTrainerToolWindow"
                factoryClass="training.ui.LearnToolWindowFactory"
    />

    <applicationConfigurable groupId="tools" bundle="messages.LearnBundle" key="learn.options.panel.name" id="FeaturesTrainerSettingsPanel"
                             instance="training.ui.FeaturesTrainerSettingsPanel"/>

    <notificationGroup displayType="STICKY_BALLOON" id="IDE Features Trainer" isLogByDefault="false"
        bundle="messages.LearnBundle" key="notification.group.feature.trainer"/>
  </extensions>

  <actions>
    <group internal="true" popup="true" id="IFTInternalActions" text="IFT Actions">
      <action internal="true" id="DumpFeaturesTrainerText" class="training.actions.DumpFeaturesTrainerText"/>
      <action internal="true" id="AutorunAllLessons" class="training.actions.AutorunAllLessons"/>
      <action internal="true" id="AutorunCurrentLesson" class="training.actions.AutorunCurrentLesson"/>
      <action internal="true" id="SetCurrentLessonAsPassed" class="training.actions.SetCurrentLessonAsPassed"/>
      <action internal="true" id="ResetOnboardingFeedbackState" class="training.actions.ResetOnboardingFeedbackStateAction"/>
      <add-to-group group-id="Internal" anchor="last"/>
    </group>

    <action id="PreviousLessonAction" class="training.actions.PreviousLessonAction"
            icon="AllIcons.Actions.Back"/>
    <action id="NextLessonAction" class="training.actions.NextLessonAction"
            icon="AllIcons.Actions.Forward"/>
    <action id="ResetLearningProgressAction" class="training.actions.ResetLearningProgressAction"
            icon="AllIcons.Actions.Restart"/>
    <action id="RestartLessonAction" class="training.actions.RestartLessonAction"
            icon="training.FeaturesTrainerIcons.ResetLesson"/>

    <!-- Help -->
    <group id="LearnGroup">
      <separator/>
      <action id="ShowLearnPanel" class="training.actions.OpenLearnPanel" icon="training.FeaturesTrainerIcons.FeatureTrainerToolWindow"/>
      <separator/>
      <add-to-group group-id="HelpMenu" relative-to-action="HelpTopics" anchor="after"/>
    </group>
  </actions>

  <extensions defaultExtensionNs="com.intellij">
    <registryKey key="ift.help.links"
                 description="Turn on IFT Help and Resources section"
                 defaultValue="TRUE"
                 restartRequired="false"/>
    <registryKey key="ift.experimental.lessons"
                 description="Turn on it to preview incomplete lessons"
                 defaultValue="FALSE"
                 restartRequired="false"/>
    <registryKey key="ift.default.restore.delay"
                 description="Specified default delay in milliseconds before previous task will be restored if something went wrong."
                 defaultValue="500"
                 restartRequired="false"/>
    <registryKey key="ift.show.feedback.link"
                 description="Whether IFT show feedback link in the modules panel."
                 defaultValue="TRUE"
                 restartRequired="false"/>
    <registryKey key="ift.use.scroll.animation"
                 description="Use scroll animation in IFT lessons."
                 defaultValue="TRUE"
                 restartRequired="false"/>
    <registryKey key="ift.send.onboarding.feedback"
                 description="Where to send onboarding lessons feedback (nowhere, staging, production)."
                 defaultValue="production"
                 restartRequired="false"/>
    <registryKey key="ift.adapt.to.not.native.localization"
                 description="Lessons logic will be changed like using not native localization."
                 defaultValue="FALSE"
                 restartRequired="false"/>
    <registryKey key="ift.enable.in.old.ui"
                 description="Whether IFT lessons and promoters should be enabled in old UI."
                 defaultValue="FALSE"
                 restartRequired="false"/>
  </extensions>



  <!--FEATURES SUGGESTER PART-->

  <extensionPoints>
    <extensionPoint name="ifs.suggester" interface="training.featuresSuggester.suggesters.FeatureSuggester" dynamic="true"/>
    <extensionPoint name="ifs.suggesterSupport"
                    beanClass="com.intellij.lang.LanguageExtensionPoint"
                    dynamic="true">
      <with attribute="implementationClass" implements="training.featuresSuggester.SuggesterSupport"/>
    </extensionPoint>
  </extensionPoints>

  <extensions defaultExtensionNs="training">
    <ifs.suggester
      implementation="training.featuresSuggester.suggesters.LineCommentingSuggester"/>
    <ifs.suggester
      implementation="training.featuresSuggester.suggesters.IntroduceVariableSuggester"/>
    <ifs.suggester
      implementation="training.featuresSuggester.suggesters.CopyPasteSuggester"/>
    <ifs.suggester
      implementation="training.featuresSuggester.suggesters.SurroundWithSuggester"/>
    <ifs.suggester
      implementation="training.featuresSuggester.suggesters.UnwrapSuggester"/>
    <ifs.suggester
      implementation="training.featuresSuggester.suggesters.FileStructureSuggester"/>
    <ifs.suggester
      implementation="training.featuresSuggester.suggesters.CompletionPopupSuggester"/>
    <ifs.suggester
      implementation="training.featuresSuggester.suggesters.ReplaceCompletionSuggester"/>
    <ifs.suggester
      implementation="training.featuresSuggester.suggesters.RunToCursorSuggester"/>
    <ifs.suggester
      implementation="training.featuresSuggester.suggesters.EditBreakpointSuggester"/>
    <ifs.suggester
      implementation="training.featuresSuggester.suggesters.MuteBreakpointsSuggester"/>
  </extensions>

  <extensions defaultExtensionNs="com.intellij">
    <applicationService
      serviceImplementation="training.featuresSuggester.settings.FeatureSuggesterSettings"/>
    <applicationConfigurable parentId="tools"
                             instance="training.featuresSuggester.settings.FeatureSuggesterConfigurable"
                             id="org.intellij.featuresSuggester.FeatureSuggesterConfigurable"
                             key="configurable.name" bundle="messages.FeatureSuggesterBundle"/>
    <psi.treeChangeListener
      implementation="training.featuresSuggester.listeners.PsiActionsListener"/>
    <editorFactoryDocumentListener
      implementation="training.featuresSuggester.listeners.DocumentActionsListener"/>
    <statistics.counterUsagesCollector
      implementationClass="training.featuresSuggester.statistics.FeatureSuggesterStatistics"/>
    <statistics.validation.customValidationRule
      implementation="training.featuresSuggester.statistics.FeatureSuggesterIdRuleValidator"/>
    <registryKey defaultValue="true" description="Send statistics about IDE Feature Suggester plugin usage"
                 key="feature.suggester.send.statistics"/>
    <registryKey defaultValue="false" description="Show suggestion even if corresponding action has been used recently"
                 key="feature.suggester.force.show.suggestions"/>
    <registryKey defaultValue="false" description="Should suggesters be enabled in settings by default or not"
                 key="feature.suggester.enable.suggesters" restartRequired="true"/>
    <notificationGroup id="IDE Feature Suggester" displayType="STICKY_BALLOON" isLogByDefault="false"
        bundle="messages.FeatureSuggesterBundle" key="notification.group.feature.suggester"/>
    <iconMapper mappingFile="FeaturesTrainerIconMappings.json"/>

    <newProject.onboarding.tips implementation="training.onboarding.NewProjectOnboardingTipsImpl"/>
    <postStartupActivity implementation="training.onboarding.InstallOnboardingTooltip"/>
    <editorFactoryListener implementation="training.onboarding.InstallOnboardingTipsEditorListener"/>
    <statistics.counterUsagesCollector
      implementationClass="training.onboarding.OnboardingTipsStatistics"/>
  </extensions>

  <projectListeners>
    <listener class="training.featuresSuggester.listeners.BreakpointsListener"
              topic="com.intellij.xdebugger.breakpoints.XBreakpointListener"/>
    <listener class="training.featuresSuggester.listeners.DebuggerListener"
              topic="com.intellij.xdebugger.XDebuggerManagerListener"/>
  </projectListeners>

  <applicationListeners>
    <listener class="training.featuresSuggester.listeners.EditorActionsListener"
              topic="com.intellij.openapi.actionSystem.ex.AnActionListener"/>
  </applicationListeners>
</idea-plugin>
 lib/featuresTrainer.jar  fileWatcher  <<idea-plugin package="com.intellij.plugins.watcher">
  <id>com.intellij.plugins.watcher</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>File Watchers</name>
  <description><![CDATA[
    <p>Allows you to automatically run a command-line tool like compilers, formatters, or linters when you change or save a file in the IDE.

    <h2>Features</h2>
    <ul>
      <li>Predefined File Watcher templates for a number of popular third-party tools (compilers, compressors, prettifiers, etc.)
      <li>Custom File Watcher that can be configured to run other third-party tools
      <li>Option to auto-save edited files to trigger the watcher
      <li>Advanced configuration options
    </ul>

    <h2>Getting started</h2>
    <p>For information on getting started, head over to the <a href="https://www.jetbrains.com/help/">documentation</a> for your IDE.
    For WebStorm, you can check out this section in the
    <a href="https://www.jetbrains.com/help/webstorm/using-file-watchers.html">documentation</a>.
  ]]></description>
  <vendor>JetBrains</vendor>
  <resource-bundle>messages.BackgroundTaskBundle</resource-bundle>

  <content>
    <module name="intellij.fileWatcher/webDeployment"/>
  </content>
  <dependencies>
    <plugin id="com.intellij.modules.xml"/>
  </dependencies>

  <extensionPoints>
    <extensionPoint name="suppressor" interface="com.intellij.plugins.watcher.config.BackgroundTaskSuppressor" dynamic="true"/>
    <extensionPoint name="consumer" interface="com.intellij.plugins.watcher.config.BackgroundTaskConsumer" dynamic="true"/>
    <extensionPoint name="filterFactory" interface="com.intellij.plugins.watcher.config.BackgroundTaskFilterFactory" dynamic="true"/>
    <extensionPoint name="dependency.finder" interface="com.intellij.plugins.watcher.config.FileDependencyFinder" dynamic="true"/>
    <extensionPoint name="output.handler" interface="com.intellij.plugins.watcher.config.OutputFilesHandler" dynamic="true"/>
    <extensionPoint name="isCustomCondition" interface="com.intellij.util.PairProcessor" dynamic="true"/>
  </extensionPoints>

  <extensions defaultExtensionNs="com.intellij">
    <postStartupActivity implementation="com.intellij.plugins.watcher.FwStartupActivity"/>
    <projectService serviceInterface="com.intellij.plugins.watcher.TaskRunner"
                        serviceImplementation="com.intellij.plugins.watcher.TaskRunnerImpl"/>
    <applicationService serviceImplementation="com.intellij.plugins.watcher.model.ApplicationTasksOptions"/>
    <projectConfigurable groupId="tools" groupWeight="150" instance="com.intellij.plugins.watcher.config.WatchersConfigurable" id="watcher.settings" key="settings.name"
                         bundle="messages.BackgroundTaskBundle"/>
    <actionOnSaveInfoProvider id="FileWatcherOnSaveInfoProvider"
                              implementation="com.intellij.plugins.watcher.config.FileWatcherOnSaveInfoProvider"
                              order="after FormatOnSaveInfoProvider, after EsLintOnSaveInfoProvider, after PrettierOnSaveInfoProvider, before UploadOnSaveInfoProvider, before BuildOnSaveInfoProvider"/>
    <search.optionContributor implementation="com.intellij.plugins.watcher.config.FileWatcherSearchableOptionContributor"/>

    <defaultHighlightingSettingProvider implementation="com.intellij.plugins.watcher.highlighting.FileWatcherHighlightingSettingProvider"/>
    <editorNotificationProvider implementation="com.intellij.plugins.watcher.action.FwEditorNotificationProvider"/>

    <stepsBeforeRunProvider implementation="com.intellij.plugins.watcher.beforeLaunch.FwBeforeLaunchTaskProvider"/>

    <!--suppress PluginXmlCapitalization -->
    <localInspection shortName="TaskProblemsInspection"
                     bundle="messages.BackgroundTaskBundle"
                     key="inspection.name.task.problems"
                     groupKey="inspections.group.name"
                     enabledByDefault="true"
                     level="WEAK WARNING"
                     implementationClass="com.intellij.plugins.watcher.inspections.TaskProblemsInspection"/>
    <notificationGroup id="File Watchers" displayType="BALLOON" bundle="messages.BackgroundTaskBundle" key="notification.group.name"/>
  </extensions>

  <applicationListeners>
    <listener topic="com.intellij.ide.file.BatchFileChangeListener"
              class="com.intellij.plugins.watcher.TaskRunnerImpl$MyBatchFileChangeListener"/>
  </applicationListeners>

  <actions>
    <action id="FileWatcher.runForFiles" class="com.intellij.plugins.watcher.action.RunWatchersForFileAction"/>
  </actions>
</idea-plugin>

 lib/fileWatcher.jar  fullLine  *<idea-plugin package="org.jetbrains.completion.full.line">
  <id>org.jetbrains.completion.full.line</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>Full Line Code Completion</name>
  <vendor>JetBrains</vendor>
  <category>Local AI/ML Tools</category>

  <description><![CDATA[
    <p>
      Designed to supercharge your code completion with multi-token proposals utilizing a deep learning model.
      Enjoy the benefits of advanced code completion offline, as it runs on your
      <b>local device without sending anything over the internet</b>.
    </p>

    <br/><b>Language support</b><br/>
    <p>
      The plugin integrates Python, Kotlin, Java, JavaScript/TypeScript, their frameworks (React, Angular, Vue),
      and CSS/LESS/SCSS/SASS, Go, PHP, Ruby.
    </p>

    <br/><b>We value your feedback</b><br/>
    <p>
      Share your experience and suggestions with us on
      <a href="https://youtrack.jetbrains.com/issues/IDEA?q=Subsystem:%7BEditor.%20Code%20Completion.%20Full%20Line%7D">
        YouTrack
      </a>.
    </p>

    <br/><b>Get started in moments</b><br/>
    <p>
      After installation, the plugin immediately enables you to enjoy enriched inline suggestions for code completion:
    </p>
    <img src="https://packages.jetbrains.team/files/p/ccrm/full-line/full-line-example.png" height="5em">
    <p>
      Accept suggestions with the <code>Tab</code> key. Customize the shortcut to your preferences via the hover menu over the gray text.
    </p>
    <img src="https://packages.jetbrains.team/files/p/ccrm/full-line/full-line-mouse-hover-popup.png" height="10em">

    <h3>Customize your settings</h3>
    <p>
      Navigate to <i>Preferences | Editor | General | Code Completion | Full Line Code Completion</i> to adjust your settings.
    </p>

    <h3>FAQ</h3>
    <div>
      - <b>Do you send my private data or code over the internet?</b>
      <br/>
      - We prioritize the privacy of your data.
        The Full Line Code Completion plugin works on your local device, ensuring no data is sent over the internet.
      <br/>

      - <b>What are the plans for supporting additional languages?</b>
      <br/>
      - The 2024.2 plan is to add support for C++, C#, and Rust.
      <br/>

      - <b>What are the hardware requirements for the plugin?</b>
      <br/>
      - It is fully compatible with Linux, Mac, and Windows operating systems and takes less than 200 MB of disk space.
        Our model is executed entirely on the CPU with the ability to run on GPU on Macs,
        automatically adapting to your device's capabilities to ensure seamless operation.
      <br/>
    </div>

    <br/>

    ]]></description>

  <content>
    <module name="intellij.fullLine.cpp"/>
    <module name="intellij.fullLine.csharp"/>
    <module name="intellij.fullLine.css"/>
    <module name="intellij.fullLine.css.less"/>
    <module name="intellij.fullLine.css.postcss"/>
    <module name="intellij.fullLine.css.sass"/>
    <module name="intellij.fullLine.go"/>
    <module name="intellij.fullLine.java"/>
    <module name="intellij.fullLine.js"/>
    <module name="intellij.fullLine.js.astro"/>
    <module name="intellij.fullLine.js.svelte"/>
    <module name="intellij.fullLine.js.vue"/>
    <module name="intellij.fullLine.kotlin"/>
    <module name="intellij.fullLine.php"/>
    <module name="intellij.fullLine.python"/>
    <module name="intellij.fullLine.python.jupyter"/>
    <module name="intellij.fullLine.ruby"/>

    <module name="intellij.fullLine.mlRanking"/>
  </content>

  <dependencies>
    <plugin id="com.intellij.modules.ultimate"/>
  </dependencies>

  <extensions defaultExtensionNs="com.intellij">
    <appStarter id="full-line" implementation="org.jetbrains.completion.full.line.starter.FullLineStarterImpl"/>
    <postStartupActivity implementation="org.jetbrains.completion.full.line.actions.FullLineStartupActivity"/>
    <postStartupActivity implementation="org.jetbrains.completion.full.line.platform.logs.SendingLogsRequestActivity"/>
    <statusBarWidgetFactory id="FullLine"
                            order="before LineSeparator, after Position"
                            implementation="org.jetbrains.completion.full.line.StatusBarProvider"/>

    <applicationService serviceImplementation="org.jetbrains.completion.full.line.settings.FullLineSettings"/>

    <completion.ml.contextFeatures language=""
                                   implementationClass="org.jetbrains.completion.full.line.platform.logs.FullLineContextFeatureProvider"/>
    <completion.ml.elementFeatures language=""
                                   implementationClass="org.jetbrains.completion.full.line.platform.logs.FullLineElementFeatureProvider"/>

    <lookup.usageDetails implementation="org.jetbrains.completion.full.line.platform.logs.FullLineUsageDescriptor" order="last"/>
    <statistics.collectorExtension
      implementation="org.jetbrains.completion.full.line.platform.logs.FullLineUsageDescriptor$FullLineUsageCollectorExtension"/>
    <inline.completion.usage.data implementation="org.jetbrains.completion.full.line.platform.logs.FullLineInlineCompletionUsageData" order="last"/>
    <statistics.collectorExtension
      implementation="org.jetbrains.completion.full.line.platform.logs.FullLineInlineCompletionUsageData$FullLineUsageCollectorExtension"/>
    <inline.completion.usage.data implementation="org.jetbrains.completion.full.line.platform.logs.FullLineInlineFeaturesData" order="last"/>


    <registryKey key="inline.completion.full.line.enabled" defaultValue="true"
                 description="Enables Full line inline completion"/>

    <registryKey key="full.line.only.proposals" defaultValue="false"
                 description="Keep only full line proposals in lookup"/>

    <registryKey key="full.line.enable.diagnostics" defaultValue="false"
                 description="Enable diagnostics tool window" restartRequired="true"/>

    <registryKey key="full.line.diagnostics.file" defaultValue="null" restartRequired="true"
                 description="Path to diagnostic log"/>

    <registryKey key="full.line.enable.caching" defaultValue="true"
                 description="Enable caching requests for full line suggestions"/>

    <registryKey key="full.line.trigger.model.path.to.zip" defaultValue="null"
                 description="Path to trigger model"/>
    <registryKey key="full.line.trigger.model.completion.probability" defaultValue="0.0"
                 description="Full Line completion trigger probability after checking trigger model score"/>
    <registryKey key="full.line.filter.model.path.to.zip" defaultValue="null"
                 description="Path to filter model"/>
    <registryKey key="full.line.filter.model.completion.probability" defaultValue="0.01"
                 description="Full Line completion filter probability after checking filter model score"/>
    <registryKey key="full.line.send.logs.probability" defaultValue="0.01"
                 description="Probability of sending Full Line logs in case relevance models are unavailable"/>
    <registryKey key="full.line.skip.nightly.check" defaultValue="false"
                 description="Option to skip nightly check"/>

    <toolWindow id="Full Line Diagnostics"
                factoryClass="org.jetbrains.completion.full.line.platform.diagnostics.FullLineDiagnosticsToolWindowFactory"
                icon="AllIcons.Nodes.Console"
                doNotActivateOnStart="false"
                anchor="bottom"
                order="last, after Terminal"
    />

    <mlCodeCompletionConfigurable
      id="full.line.completion.settings"
      bundle="messages.FullLineBundle"
      order="first"
      provider="org.jetbrains.completion.full.line.settings.FullLineReducedProvider"/>
    <lookup.charFilter implementation="org.jetbrains.completion.full.line.platform.filter.FullLineCharFilter"/>

    <notificationGroup
      id="Full Line Completion Plugin"
      displayType="STICKY_BALLOON"
      isLogByDefault="true"
      bundle="messages.FullLineBundle"
      key="full.line.plugin.title"/>

    <!--suppress PluginXmlValidity -->
    <inline.completion.provider
      id="FullLineInlineCompletionProvider"
      implementation="org.jetbrains.completion.full.line.platform.inline.FullLineInlineCompletionProvider"
      order="last"/>
    <statistics.counterUsagesCollector
      implementationClass="org.jetbrains.completion.full.line.logs.FullLineCodeCompletionLogs$Logger"/>

    <editorFactoryListener
      implementation="org.jetbrains.completion.full.line.feedback.ExplicitFeedbackInlineEditorFactoryListener"
      order="last"/>
  </extensions>

  <projectListeners>
    <listener class="org.jetbrains.completion.full.line.feedback.ExplicitFeedbackLookupManagerListener"
              topic="com.intellij.codeInsight.lookup.LookupManagerListener"/>
  </projectListeners>

  <!-- Hardware benchmark end -->

  <extensionPoints>
    <extensionPoint name="fullLineLanguageSupport" beanClass="org.jetbrains.completion.full.line.language.supporters.FullLineLanguageSupporterEP" dynamic="true">
      <with attribute="implementationClass" implements="org.jetbrains.completion.full.line.language.supporters.FullLineLanguageSupporter"/>
    </extensionPoint>
    <extensionPoint
      name="mlRankingFacade"
      interface="org.jetbrains.completion.full.line.services.MLRankingFacade"
      dynamic="true"/>
    <extensionPoint
      name="fullLineRequestListener"
      interface="org.jetbrains.completion.full.line.platform.request.FullLineRequestListener"
      dynamic="true"/>
  </extensionPoints>

  <actions>
    <group id="FullLine.InternalGroup" popup="true" internal="true" searchable="false">
      <action id="FullLine.ShowSettingsAction" class="org.jetbrains.completion.full.line.actions.FullLineShowSettingsAction"
              icon="AllIcons.General.Settings">
        <add-to-group group-id="InlineCompletion.Settings" anchor="first"/>
      </action>
      <action id="FullLine.GenerateMarkerAction" internal="true" class="org.jetbrains.completion.full.line.markers.actions.FullLineGenerateMarkerAction">
        <add-to-group group-id="GenerateGroup" anchor="last"/>
        <keyboard-shortcut keymap="$default" first-keystroke="shift ctrl alt M"/>
      </action>
      <action id="FullLine.GenerateContextAction" internal="true" class="org.jetbrains.completion.full.line.actions.FullLineGenerateContextAction">
        <add-to-group group-id="GenerateGroup" anchor="last"/>
        <keyboard-shortcut keymap="$default" first-keystroke="shift ctrl alt Y"/>
      </action>

      <add-to-group group-id="Internal" anchor="last"/>
    </group>
    <group id="FullLineGroup" popup="true" internal="false" searchable="false"/>
  </actions>
  <resource-bundle>messages.FullLineBundle</resource-bundle>
</idea-plugin>
 lib/fullLine.jar  gateway-plugin  0<idea-plugin xmlns:xi="http://www.w3.org/2001/XInclude">

  <name>Remote Development Gateway</name>
  <category>Remote Development</category>
  <id>com.jetbrains.gateway</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <vendor>JetBrains</vendor>

  <description><![CDATA[
    <p>Connect to all your remote JetBrains IDE backends
    ]]></description>

  <depends>com.intellij.modules.platform</depends>
  <depends>com.intellij.modules.ssh</depends>
  <incompatible-with>com.intellij.cwm.guest</incompatible-with>
  <incompatible-with>com.intellij.jetbrains.client</incompatible-with>
  <incompatible-with>com.intellij.modules.aqua</incompatible-with>

  <xi:include href="/META-INF/GatewayCore.xml" xpointer="xpointer(/idea-plugin/*)"/>
</idea-plugin>
 lib/gateway-plugin.jar  gateway-terminal  B<idea-plugin implementation-detail="true">
  <id>com.jetbrains.gateway.terminal</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <vendor>JetBrains</vendor>
  <name>Terminal for Gateway</name>
  <description><![CDATA[
    <p>Internal plugin which allows gateway to show terminal to a remote machine.
    ]]></description>

  <depends>com.jetbrains.gateway</depends>
  <depends>com.intellij.modules.ssh</depends>
  <depends>org.jetbrains.plugins.terminal</depends>

  <extensions defaultExtensionNs="com.intellij">
    <applicationService serviceInterface="com.jetbrains.gateway.ssh.TerminalFacade"
                        serviceImplementation="com.jetbrains.gateway.terminal.TerminalFacadeImpl"
                        overrides="true"/>
  </extensions>

</idea-plugin>
 lib/gateway-terminal.jar  go-ide  f<idea-plugin implementation-detail="true" package="com.goide.ide">
  <name>Go IDE</name>
  <id>org.jetbrains.plugins.go.ide</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <description>The plugin brings Go-specific IDE configuration.</description>
  <vendor>JetBrains</vendor>

  <dependencies>
    <plugin id="org.jetbrains.plugins.go"/>
  </dependencies>
  <resource-bundle>messages.GoBundle</resource-bundle>

  <extensions defaultExtensionNs="com.intellij">
    <postStartupActivity implementation="com.goide.ide.GoIdeInitialConfigurator"/>
    <projectConfigurable groupId="root" id="go" groupWeight="1000" bundle="messages.GoBundle" key="go.project.configurable.name" instance="com.goide.configuration.GoRootConfigurable"/>
    <projectAttachProcessor implementation="com.goide.ide.GoProjectAttachProcessor"/>

    <applicationService serviceInterface="com.intellij.openapi.module.ModuleTypeManager"
                        serviceImplementation="com.goide.ide.GoModuleTypeManager"
                        overrides="true"/>

    <directoryProjectGenerator implementation="com.goide.ide.wizard.empty.GoEmptyProjectGenerator"/>
    <directoryProjectGenerator implementation="com.goide.ide.wizard.appengine.GoAppEngineProjectGenerator"/>

    <newUIConfigurable implementation="com.goide.ide.GoExperimentalUIConfigurable"/>

    <backgroundPostStartupActivity implementation="com.goide.ide.GoSurveyPromoterStartupActivity"/>
    <notificationGroup id="Go Developer Survey Promoter" displayType="STICKY_BALLOON" bundle="messages.GoBundle" key="notification.group.general"/>

    <registryKey key="go.attach.content.root" defaultValue="false"
                 description="Makes Attach action add content roots instead of modules.
                 This is a fallback option, it will be removed in the future."/>
  </extensions>

  <actions>
    <action id="GoIdeNewProjectAction" class="com.goide.ide.GoIdeNewProjectAction">
      <add-to-group group-id="NewProjectOrModuleGroup"/>
    </action>

    <action id="GoEditSettingsAction" class="com.goide.ide.action.GoEditSettingsAction" icon="com.goide.GoIcons.ICON">
      <add-to-group group-id="SettingsEntryPointGroup" anchor="after" relative-to-action="ShowSettings"/>
      <synonym key="action.GoEditSettingsAction.text.synonym"/>
    </action>

    <action id="GoEditActionsOnSaveAction" class="com.goide.ide.action.GoEditActionsOnSaveAction">
      <add-to-group group-id="SettingsEntryPointGroup" anchor="after" relative-to-action="WelcomeScreen.Plugins"/>
    </action>

    <group id="WelcomeScreen.Platform.NewProject">
      <action id="WelcomeScreen.CreateDirectoryProject" class="com.goide.ide.GoNewProjectStep"/>
      <reference ref="WelcomeScreen.OpenDirectoryProject"/>
      <add-to-group group-id="WelcomeScreen.QuickStart" anchor="first"/>
    </group>
  </actions>
</idea-plugin> lib/go-ide.jar  	go-plugin  <idea-plugin xmlns:xi="http://www.w3.org/2001/XInclude" package="com.goide">
  <id>org.jetbrains.plugins.go</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>Go</name>
  <vendor url="https://www.jetbrains.com/go/">JetBrains</vendor>
  <category>Languages</category>

  <description><![CDATA[<p>This plugin extends IntelliJ IDEA Ultimate with Go-specific coding assistance and tool integrations,
and has everything you could find in <a href="https://www.jetbrains.com/go/">GoLand</a>. Please note that the only compatible IDE is
<a href="https://www.jetbrains.com/idea/">IntelliJ IDEA Ultimate</a>.</p>]]></description><change-notes><![CDATA[<p>To learn more about the new features in GoLand, head over to our

<a href="https://www.jetbrains.com/go/whatsnew/">What's New page</a>,
where you'll find a full overview of the new release along with GIFs and screenshots.
</p>

<br>

<p>Early Access Program builds are available <a href="https://www.jetbrains.com/go/nextversion/">on this page</a>.</p>]]></change-notes>

  <content>
    <module name="intellij.go.template.integration"/>
    <module name="intellij.go.terminal"/>
    <module name="intellij.go.shell"/>
    <module name="intellij.go.coverage"/>
    <module name="intellij.go.copyright"/>
    <module name="intellij.go.watchers"/>
    <module name="intellij.go.featuresTrainer"/>
    <module name="intellij.go.grazie"/>
    <module name="intellij.go.completionMlRanking"/>
    <module name="intellij.go.sharedIndexes"/>
    <module name="intellij.go.diagram"/>
    <module name="intellij.go.docker"/>
    <module name="intellij.go.profiler"/>
    <module name="intellij.go.microservices"/>
    <module name="intellij.go.langInjection"/>
    <module name="intellij.go.dfa"/>
  </content>
  <dependencies>
    <plugin id="com.intellij.modules.lang"/>
    <plugin id="com.intellij.modules.ultimate"/>
    <plugin id="com.intellij.modules.go-capable"/>
  </dependencies>

  <xi:include href="/META-INF/openapi.xml"/>
  <xi:include href="/META-INF/vgo.xml"/>
  <xi:include href="/META-INF/plan9.xml"/>
  <xi:include href="/META-INF/goland.xml"/>
</idea-plugin>
 lib/go-plugin.jar lib/go-frontback.jar  go-sharedIndexes-bundled  v<idea-plugin implementation-detail="true" package="com.goide.index.shared.bundled">
  <name>Shared Indexes for Go</name>
  <id>org.jetbrains.plugins.go.sharedIndexes.bundled</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <description>Shared indexes for Go SDK source files. They're intended to speed-up opening of an unindexed project.</description>
  <vendor>JetBrains</vendor>

  <content>
    <module name="intellij.go.sharedIndexes.bundled/sharedCore"/>
  </content>
  <dependencies>
    <plugin id="org.jetbrains.plugins.go"/>
  </dependencies>
</idea-plugin>  lib/go-sharedIndexes-bundled.jar  go-template  =<idea-plugin package="com.goide.template">
  <id>org.jetbrains.plugins.go-template</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>Go Template</name>
  <vendor url="https://www.jetbrains.com/go/">JetBrains</vendor>
  <category>Template Languages</category>

  <description><![CDATA[
    <p>Support for <a href="https://golang.org/pkg/text/template/">Go template engine</a> (<a href="https://www.jetbrains.com/help/go/integration-with-go-templates.html">plugin documentation</a>).</p>
    ]]></description>

  <dependencies>
    <plugin id="com.intellij.modules.lang"/>
  </dependencies>

  <resource-bundle>messages.GoTemplateBundle</resource-bundle>

  <extensions defaultExtensionNs="com.intellij">
    <fileType language="GoTemplate" name="Go Template" extensions="gohtml" implementationClass="com.goide.template.file.GoTemplateFileType"
              fieldName="INSTANCE"/>
    <lang.parserDefinition language="GoTemplate" implementationClass="com.goide.template.GoTemplateParserDefinition"/>
    <lang.fileViewProviderFactory language="GoTemplate" implementationClass="com.goide.template.file.GoTemplateFileViewProviderFactory"/>
    <lang.syntaxHighlighter language="GoTemplate" implementationClass="com.goide.template.highlighting.GoTemplateSyntaxHighlighter"/>
    <editorHighlighterProvider filetype="Go Template" implementationClass="com.goide.template.highlighting.GoTemplateEditorHighlighter$Provider"/>
    <colorSettingsPage implementation="com.goide.template.highlighting.GoTemplateColorsAndFontsPage"/>
    <lang.formatter language="GoTemplate" implementationClass="com.goide.template.formatter.GoTemplateFormattingModelBuilder"/>
    <completion.contributor language="GoTemplate" implementationClass="com.goide.template.GoTemplateCompletionContributor"/>
    <typedHandler implementation="com.goide.template.GoTemplateTypeHandler"/>
    <lang.braceMatcher language="GoTemplate" implementationClass="com.goide.template.GoTemplateBraceMatcher"/>
    <typedHandler implementation="com.goide.template.GoTemplateBracesHandler"/>
    <lang.commenter language="GoTemplate" implementationClass="com.goide.template.GoTemplateCommenter"/>
    <lang.quoteHandler language="GoTemplate" implementationClass="com.goide.template.GoTemplateQuoteHandler"/>
    <backspaceHandlerDelegate id="com.goide.template.GoTemplateBackspaceHandler" implementation="com.goide.template.GoTemplateBackspaceHandler"/>
    <highlightErrorFilter implementation="com.goide.template.highlighting.GoTemplateErrorFilter"/>
    <lang.findUsagesProvider language="GoTemplate" implementationClass="com.goide.template.GoTemplateFindUsagesProvider"/>
    <findUsagesHandlerFactory implementation="com.goide.template.GoTemplateFindUsagesHandlerFactory"/>
    <lang.elementManipulator forClass="com.goide.template.psi.GoTemplateStringLiteral"
                             implementationClass="com.goide.template.psi.GoTemplateStringManipulator"/>
    <lang.psiStructureViewFactory language="GoTemplate" implementationClass="com.goide.template.GoTemplateStructureViewFactory"/>
    <renamePsiElementProcessor implementation="com.goide.template.usages.GoTemplateRenameProcessor"/>
    <codeBlockSupportHandler language="GoTemplate"
                             implementationClass="com.goide.template.GoTemplateBlockSupportHandler"/>

    <liveTemplateContext contextId="GO_TEMPLATE" implementation="com.goide.template.GoTemplateLiveTemplateContextType"/>
    <defaultLiveTemplates file="liveTemplates/GoTemplate.xml"/>

    <!--suppress PluginXmlCapitalization -->
    <localInspection language="GoTemplate" groupPath="Go Template"
                     bundle="messages.GoTemplateBundle" key="go.template.inspection.unknown.variable.display.name"
                     groupBundle="messages.InspectionsBundle" groupKey="inspection.general.tools.group.name"
                     enabledByDefault="true" level="ERROR"
                     implementationClass="com.goide.template.inspections.GoTemplateUnknownVariableInspection"/>
    <!--suppress PluginXmlCapitalization -->
    <localInspection language="GoTemplate" groupPath="Go Template"
                     bundle="messages.GoTemplateBundle" key="go.template.inspection.duplicate.variable.display.name"
                     groupBundle="messages.InspectionsBundle" groupKey="inspection.general.tools.group.name"
                     enabledByDefault="true" level="ERROR"
                     implementationClass="com.goide.template.inspections.GoTemplateDuplicateVariableInspection"/>
    <iconMapper mappingFile="TemplateIconMappings.json"/>
  </extensions>
</idea-plugin>
 lib/go-template.jar  grazie  y<idea-plugin package="com.intellij.grazie">
  <id>tanvd.grazi</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>Grazie Lite</name>
  <vendor>JetBrains</vendor>

  <incompatible-with>com.intellij.cwm.guest</incompatible-with>
  <incompatible-with>com.intellij.jetbrains.client</incompatible-with>
  <incompatible-with>com.intellij.gateway</incompatible-with>

  <description><![CDATA[
    <p>Intelligent spelling and grammar checks for any text you write in the IDE.</p>

    <ul>
      <li>
        Supports over 20 languages, including English, German, Russian, and Chinese.
        English is enabled by default.
        To add other languages, open <b>Settings/Preferences | Editor | Natural Languages</b>.
      </li>
      <li>
        Works with natural languages in programming language constructs (Python, Java, and others),
        markup languages (Markdown, HTML, XML, and others), comments, and commit messages.
      </li>
      <li>Uses <a href="https://www.languagetool.org/">LanguageTool</a> as its proofreading engine.</li>
    </ul>

    <p>Data privacy: all verification is performed locally, inside your IDE.</p>
    ]]></description>

  <content>
    <module name="intellij.grazie.java"/>
    <module name="intellij.grazie.json"/>
    <module name="intellij.grazie.markdown"/>
    <module name="intellij.grazie.properties"/>
    <module name="intellij.grazie.xml"/>
    <module name="intellij.grazie.yaml"/>
  </content>

  <extensions defaultExtensionNs="com.intellij">
    <applicationService serviceImplementation="com.intellij.grazie.GrazieConfig"/>

    <backgroundPostStartupActivity implementation="com.intellij.grazie.ide.notification.GrazieNotificationComponent"/>

    <!-- getDisplayName is overridden in GrazieInspection itself! Placeholder is required to suppress validation. -->
    <localInspection bundle="messages.GrazieBundle" groupKey="grazie.group.name" enabledByDefault="true" shortName="GrazieInspection"
                     implementationClass="com.intellij.grazie.ide.inspection.grammar.GrazieInspection"
                     level="GRAMMAR_ERROR" key="grazie.grammar.inspection.grammar.text"/>

    <localInspection bundle="messages.GrazieBundle" groupKey="grazie.group.name" enabledByDefault="true" shortName="LanguageDetectionInspection"
                     implementationClass="com.intellij.grazie.ide.inspection.detection.LanguageDetectionInspection"
                     level="WARNING" key="grazie.detection.inspection.text"/>

    <applicationConfigurable parentId="editor" instance="com.intellij.grazie.ide.ui.proofreading.ProofreadConfigurable" id="proofread"
                             key="configurable.group.proofread.settings.display.name" bundle="messages.OptionsBundle"/>

    <applicationConfigurable parentId="proofread" instance="com.intellij.grazie.ide.ui.grammar.GrazieConfigurable"
                             id="reference.settingsdialog.project.grazie"
                             key="grazie.settings.page.name" bundle="messages.GrazieBundle"/>

    <search.optionContributor implementation="com.intellij.grazie.ide.ui.search.GrazieSearchableOptionContributor"/>

    <statistics.applicationUsagesCollector implementation="com.intellij.grazie.ide.fus.GrazieFUSState"/>
    <statistics.counterUsagesCollector implementationClass="com.intellij.grazie.ide.fus.GrazieFUSCounter"/>
    <statistics.notificationIdsHolder implementation="com.intellij.grazie.ide.notification.GrazieNotificationIds"/>

    <spellchecker.dictionary.runtimeDictionaryProvider implementation="com.intellij.grazie.spellcheck.GrazieDictionaryProvider"/>
    <notificationGroup id="Proofreading missing languages information" displayType="STICKY_BALLOON" bundle="messages.GrazieBundle" key="grazie.notification.missing-languages.group"/>

    <notificationGroup displayType="STICKY_BALLOON"
                       id="Grazie notifications"
                       bundle="messages.GrazieBundle"
                       key="grazie.notification.grazie.group"/>

    <annotator language="TEXT" implementationClass="com.intellij.grazie.ide.language.commit.CommitAnnotator"/>

    <additionalTextAttributes scheme="Default" file="colorSchemes/GrazieDefault.xml"/>
    <additionalTextAttributes scheme="Darcula" file="colorSchemes/GrazieDarcula.xml"/>

    <severitiesProvider implementation="com.intellij.grazie.ide.TextProblemSeverities"/>
    <daemon.statusItemMerger implementation="com.intellij.grazie.ide.TextSeverityMerger"/>
  </extensions>

  <extensions defaultExtensionNs="com.intellij.grazie">
    <textChecker implementation="com.intellij.grazie.grammar.LanguageToolChecker" id="languageTool"/>

    <textExtractor language="TEXT" implementationClass="com.intellij.grazie.text.PlainTextExtractor"/>

    <problemFilter language="" implementationClass="com.intellij.grazie.text.CodeProblemFilter"/>
    <problemFilter language="TEXT" implementationClass="com.intellij.grazie.text.CodeProblemFilter$InPlainText"/>

    <problemFilter language="" implementationClass="com.intellij.grazie.text.CommentProblemFilter"/>
  </extensions>

  <extensionPoints>
    <extensionPoint qualifiedName="com.intellij.grazie.grammar.strategy" beanClass="com.intellij.lang.LanguageExtensionPoint"
                    dynamic="true">
      <with attribute="implementationClass" implements="com.intellij.grazie.grammar.strategy.GrammarCheckingStrategy"/>
    </extensionPoint>
    <extensionPoint qualifiedName="com.intellij.grazie.textExtractor" beanClass="com.intellij.lang.LanguageExtensionPoint"
                    dynamic="true">
      <with attribute="implementationClass" implements="com.intellij.grazie.text.TextExtractor"/>
    </extensionPoint>
    <extensionPoint qualifiedName="com.intellij.grazie.problemFilter" beanClass="com.intellij.lang.LanguageExtensionPoint"
                    dynamic="true">
      <with attribute="implementationClass" implements="com.intellij.grazie.text.ProblemFilter"/>
    </extensionPoint>
    <extensionPoint qualifiedName="com.intellij.grazie.textChecker" interface="com.intellij.grazie.text.TextChecker"
                    dynamic="true"/>
    <extensionPoint qualifiedName="com.intellij.grazie.disableChecking"
                    beanClass="com.intellij.grazie.config.CheckingContext$DisableChecking"
                    dynamic="true"/>
    <extensionPoint qualifiedName="com.intellij.grazie.textContentModificationTrackerProvider"
                    beanClass="com.intellij.lang.LanguageExtensionPoint"
                    dynamic="true"
    >
      <with attribute="implementationClass" implements="com.intellij.grazie.text.TextContentModificationTrackerProvider"/>
    </extensionPoint>
  </extensionPoints>
</idea-plugin>
 lib/grazie.jar  grid-core-impl  <idea-plugin implementation-detail="true">
  <id>intellij.grid.core.impl</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <vendor>JetBrains</vendor>
  <name>Data Editor Support Core</name>
  <description><![CDATA[Basic functionality that is required for Data Editor]]></description>

  <extensionPoints>
    <extensionPoint qualifiedName="com.intellij.database.datagrid.objectNormalizerProvider" interface="com.intellij.database.datagrid.ObjectNormalizerProvider" dynamic="true"/>
    <extensionPoint qualifiedName="com.intellij.database.datagrid.formatterCreatorProvider" interface="com.intellij.database.datagrid.FormatterCreatorProvider" dynamic="true"/>
    <extensionPoint qualifiedName="com.intellij.database.datagrid.extractorsHelper" interface="com.intellij.database.extractors.ExtractorsHelper" dynamic="true"/>
  </extensionPoints>

  <extensions defaultExtensionNs="com.intellij">
    <applicationService serviceImplementation="com.intellij.database.settings.CsvSettings"/>
    <applicationService serviceImplementation="com.intellij.database.settings.DataGridAppearanceSettingsImpl"/>
    <fileType name="CSV/TSV" implementationClass="com.intellij.database.csv.CsvFileType" fieldName="INSTANCE" extensions="csv;tsv"/>
    <registryKey key="grid.tables.columns.limit" defaultValue="2000"
                 description="Limit the number of columns to be displayed in the table"/>
    <iconMapper mappingFile="GridIconMappings.json"/>
  </extensions>

</idea-plugin>
 lib/grid-core.jar lib/jdbc-console-types.jar  	grid-impl  m<idea-plugin implementation-detail="true" >
  <vendor>JetBrains</vendor>
  <id>intellij.grid.impl</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>Data Editor Support</name>
  <description><![CDATA[Main functionality that is required for Data Editor]]></description>

  <depends>intellij.charts</depends>
  <depends>intellij.grid.core.impl</depends>
  <depends>com.intellij.platform.images</depends>

  <extensionPoints>
    <extensionPoint qualifiedName="com.intellij.database.datagrid.valueEditorTab" interface="com.intellij.database.run.ui.ValueEditorTab" dynamic="true"/>
  </extensionPoints>

  <extensions defaultExtensionNs="com.intellij">
    <fileEditorProvider id="csv-data-editor" implementation="com.intellij.database.editor.CsvTableFileEditorProvider" fileType="CSV/TSV" isDocumentRequired="true"/>
    <fileEditorProvider id="scripted-data-editor" implementation="com.intellij.database.editor.ScriptedTableFileEditorProvider"/>
    <editorActionHandler action="EditorEscape" implementationClass="com.intellij.database.actions.EscapeEditMaximizedHandler"/>
    <statusBarWidgetFactory id="GridAggregator" implementation="com.intellij.database.datagrid.AggregatorWidget$Factory" order="before Position"/>
    <statusBarWidgetFactory id="GridPosition" implementation="com.intellij.database.datagrid.GridPositionWidget$Factory" order="before Position"/>
    <notificationGroup id="Extractors" displayType="BALLOON" bundle="messages.DataGridBundle" key="notification.title.grid.extractors"/>
    <notificationGroup id="GridPaste" displayType="BALLOON" bundle="messages.DataGridBundle" key="notification.title.grid.paste" isLogByDefault="false"/>
    <postStartupActivity implementation="com.intellij.database.datagrid.DataGridStartupActivity" order="last"/>

    <registryKey key="database.grid.render.cache" defaultValue="true"
                 description="Cache cell images for speed"/>
    <registryKey key="database.grid.render.cache.fast.scroll" defaultValue="true"
                 description="Reduce font quality for speed when fast-scrolling over a background image"/>
    <registryKey key="database.grid.cache.factor" defaultValue="3"
                 description="Factor for cache size for rendered table cells"/>
    <registryKey key="database.grid.show.chart.tab" defaultValue="true" restartRequired="false"
                 description="Adds 'Show Chart' action to DG tables in editor, inlay and services."/>
    <applicationService serviceInterface="com.intellij.database.extensions.ExtensionsService" serviceImplementation="com.intellij.database.extensions.ExtensionsServiceImpl"/>
    <database.datagrid.valueEditorTab implementation="com.intellij.database.run.ui.AggregateValueEditorTab"/>
    <database.datagrid.valueEditorTab implementation="com.intellij.database.run.ui.EditorValueEditorTab"/>
    <database.datagrid.valueEditorTab implementation="com.intellij.database.run.ui.RecordViewTab"/>

    <colorSettingsPage implementation="com.intellij.database.editor.DataGridColorSettingsPage"/>

    <applicationConfigurable id="database.data.csv.formats" groupId="tools" groupWeight="124"
                             bundle="messages.DataGridBundle"
                             key="configurable.DatabaseSettingsConfigurable.CsvFormats.display.name"
                             instance="com.intellij.database.settings.CsvSettingsConfigurable"/>

    <applicationConfigurable id="database.data.views.appearance" groupId="appearance"
                             bundle="messages.IdeBundle"
                             key="configurable.DatabaseSettingsConfigurable.DataViews.display.name"
                             groupWeight="100"
                             instance="com.intellij.database.settings.DataGridAppearanceConfigurable"/>

    <projectService serviceImplementation="com.intellij.database.datagrid.GridDataHookUpManager"/>
    <search.optionContributor implementation="com.intellij.database.settings.DataGridAppearanceOptionContributor"/>
    <advancedSetting id="database.import.open.detected.tables" enumClass="com.intellij.database.editor.ScriptedTableFileEditorProvider$OpenDetectedTables" default="TABLE_FIRST_FORMATS" bundle="messages.DataGridBundle" groupKey="advanced.settings.database"/>
  </extensions>

  <actions resource-bundle="messages.DataGridBundle">
    <action id="DecreaseColumnWidth" class="com.intellij.database.actions.ColumnsWidthAction$DecreaseColumnsWidthAction"
            use-shortcut-of="ResizeToolWindowLeft"/>
    <action id="IncreaseColumnWidth" class="com.intellij.database.actions.ColumnsWidthAction$IncreaseColumnsWidthAction"
            use-shortcut-of="ResizeToolWindowRight"/>
    <action id="ResetColumnsWidth" class="com.intellij.database.actions.ResetColumnsWidth"
            use-shortcut-of="ResizeToolWindowUp"/>
    <action id="TableResult.GrowSelection" class="com.intellij.database.actions.GrowSelectionAction"
            use-shortcut-of="EditorSelectWord"/>
    <action id="TableResult.ShrinkSelection" class="com.intellij.database.actions.ShrinkSelectionAction"
            use-shortcut-of="EditorUnSelectWord"/>
    <action id="TableResult.SelectNextOccurrence"
            class="com.intellij.database.actions.GridOccurrenceSelectionAction$SelectNextOccurrenceAction"
            use-shortcut-of="SelectNextOccurrence"/>
    <action id="TableResult.UnselectPreviousOccurrence"
            class="com.intellij.database.actions.GridOccurrenceSelectionAction$UnselectPreviousOccurrenceAction"
            use-shortcut-of="UnselectPreviousOccurrence"/>
    <action id="TableResult.SelectAllOccurrences"
            class="com.intellij.database.actions.GridOccurrenceSelectionAction$SelectAllOccurrencesAction"
            use-shortcut-of="SelectAllOccurrences"/>
    <action id="Console.TableResult.ShowChart" class="com.intellij.database.actions.ShowChartUnderTableAction"
            icon="ChartsIcons.Chart.Chart"/>
    <action id="Console.TableResult.CloseChart" class="com.intellij.database.actions.HideChartUnderTableAction"
            icon="AllIcons.Actions.Close"/>
    <action id="Console.TableResult.SwitchTo.TableView" class="com.intellij.database.actions.SwitchToTableAction"
            icon="AllIcons.Nodes.DataTables"/>
    <action id="Console.TableResult.SwitchTo.ChartView" class="com.intellij.database.actions.SwitchToChartAction"
            icon="ChartsIcons.Chart.Chart"/>
    <action id="Console.TableResult.Copy.Csv.Settings" class="com.intellij.database.run.actions.ShowCsvFormatsAction"
            icon="AllIcons.Actions.Properties"/>
    <action id="Console.TableResult.Copy.Csv.Settings.ForImport" class="com.intellij.database.run.actions.ShowCsvFormatsAction$ForImport"/>

    <action id="Console.TableResult.ChangeCellEditorFileEncoding" class="com.intellij.database.run.actions.ChangeCellEditorFileEncodingAction"
            use-shortcut-of="ChangeFileEncodingAction"/>
    <action id="Console.TableResult.DeleteRows" class="com.intellij.database.run.actions.DeleteRowsAction"
            use-shortcut-of="EditorDeleteLine"/>
    <action class="com.intellij.database.run.actions.LoadFileAction" id="Console.TableResult.LoadFile"/>
    <action id="GotoRow" class="com.intellij.database.editor.GotoRowAction"
            use-shortcut-of="GotoLine">
      <add-to-group group-id="GoToMenu" anchor="before" relative-to-action="GotoLine"/>
      <add-to-group group-id="EditorPopupMenu.GoTo" anchor="last"/>
    </action>
    <action class="com.intellij.database.actions.GotoReferencingResultAction" id="Console.TableResult.GotoReferencingResult"
            use-shortcut-of="GotoDeclaration">
      <add-to-group group-id="EditorPopupMenu.GoTo" anchor="last"/>
    </action>
    <action class="com.intellij.database.actions.GotoReferencedResultAction" id="Console.TableResult.GotoReferencedResult">
      <mouse-shortcut keymap="$default" keystroke="button1 doubleClick"/>
      <keyboard-shortcut keymap="$default" first-keystroke="ENTER"/>
      <keyboard-shortcut keymap="$default" first-keystroke="alt ENTER"/>
      <keyboard-shortcut keymap="$default" first-keystroke="F2"/>
    </action>
    <action class="com.intellij.database.actions.ShowEditMaximizedAction" id="Console.TableResult.EditValueMaximized"
            icon="AllIcons.General.ExpandComponent">
      <keyboard-shortcut keymap="$default" first-keystroke="shift ENTER"/>
      <keyboard-shortcut keymap="$default" first-keystroke="alt shift ENTER"/>
    </action>
    <action class="com.intellij.database.actions.ShowAggregateViewAction" id="Console.TableResult.AggregateView"
            icon="AllIcons.General.ExpandComponent"/>
    <action id="Console.TableResult.ShowRecordView" class="com.intellij.database.actions.ShowRecordViewAction"
            icon="AllIcons.General.ExpandComponent">
      <keyboard-shortcut keymap="$default" first-keystroke="ctrl shift ENTER"/>
    </action>
    <group id="Console.TableResult.ChooseAggregators.ScriptedGroup" class="com.intellij.database.run.actions.ChooseAggregatorsAction$ScriptedGroup" popup="false"/>
    <action id="Console.TableResult.GoToAggregatorsScriptsDirectory"
            class="com.intellij.database.run.actions.ChooseAggregatorsAction$GoToScriptsDirectoryAction"
            icon="AllIcons.Nodes.Folder"/>
    <action id="Console.TableResult.EnableAllAggregators"
            class="com.intellij.database.run.actions.ChooseAggregatorsAction$EnableAllAggregatorsAction"/>
    <action id="Console.TableResult.DisableAllAggregators"
            class="com.intellij.database.run.actions.ChooseAggregatorsAction$DisableAllAggregatorsAction"/>
    <action class="com.intellij.database.actions.CopyAggregatorResult" id="Console.TableResult.CopyAggregatorResult"
            icon="AllIcons.Actions.Copy"
            use-shortcut-of="CopyPaths"/>
    <group id="Console.TableResult.ColumnDisplayTypeChange" class="com.intellij.database.run.actions.ChangeColumnDisplayTypeAction"/>
    <group id="Console.TableResult.ColumnActions" popup="false">
      <action id="Console.TableResult.ColumnVisibility" class="com.intellij.database.run.actions.ColumnAction$Visibility">
        <keyboard-shortcut keymap="$default" first-keystroke="SPACE"/>
      </action>
      <group id="Console.TableResult.ColumnSortingActions" popup="true">
        <action id="Console.TableResult.ColumnSortAsc" class="com.intellij.database.run.actions.ColumnAction$SortAsc"
                use-shortcut-of="MoveLineUp">
        </action>
        <action id="Console.TableResult.ColumnSortDesc" class="com.intellij.database.run.actions.ColumnAction$SortDesc"
                use-shortcut-of="MoveLineDown">
        </action>
        <action id="Console.TableResult.ColumnSortAddAsc" class="com.intellij.database.run.actions.ColumnAction$SortAddAsc"/>
        <action id="Console.TableResult.ColumnSortAddDesc" class="com.intellij.database.run.actions.ColumnAction$SortAddDesc"/>
        <action id="Console.TableResult.ColumnSortReset" class="com.intellij.database.run.actions.ColumnAction$SortReset">
          <keyboard-shortcut keymap="$default" first-keystroke="control alt shift BACK_SPACE"/>
        </action>
      </group>

      <add-to-group group-id="StructureViewPopupMenu" anchor="last"/>
    </group>
    <action id="Console.TableResult.AddColumn" class="com.intellij.database.run.actions.AddColumnAction"
            use-shortcut-of="EditorToggleColumnMode" icon="AllIcons.General.Add"/>
    <action id="Console.TableResult.DeleteColumns" class="com.intellij.database.run.actions.DeleteColumnsAction" icon="AllIcons.General.Remove">
      <keyboard-shortcut keymap="$default" first-keystroke="alt shift DELETE"/>
    </action>
    <action id="Console.TableResult.CloneColumn" icon="AllIcons.Actions.Copy" class="com.intellij.database.run.actions.CloneColumnAction">
      <keyboard-shortcut keymap="$default" first-keystroke="ctrl alt shift d"/>
    </action>
    <action id="Console.TableResult.ChangeColumnLanguage" class="com.intellij.database.run.actions.ChangeColumnLanguageAction"/>
    <group id="Console.TableResult.ColumnHeaderPopup" popup="true">
      <action id="Console.TableResult.Csv.SetFirstRowIsHeader" class="com.intellij.database.run.actions.SetFirstRowIsHeaderAction"/>
      <action id="Console.TableResult.CopyColumnName" class="com.intellij.database.run.actions.CopyColumnNameAction"/>
      <action id="Console.TableResult.RenameColumn" class="com.intellij.database.run.actions.RenameColumnAction"/>
      <action id="TableResult.SelectColumn" class="com.intellij.database.actions.SelectColumnAction"
              use-shortcut-of="EditorSelectWord"/>
      <separator/>
      <action id="Console.TableResult.HideColumn" class="com.intellij.database.run.actions.HideColumnAction"/>
      <action id="Console.TableResult.HideOtherColumns" class="com.intellij.database.run.actions.HideOtherColumnsAction"/>
      <action id="Console.TableResult.ShowAllColumns" class="com.intellij.database.run.actions.ShowAllColumnsAction"/>
      <action id="Console.TableResult.ColumnsList" class="com.intellij.database.run.actions.ColumnsListAction"
              use-shortcut-of="FileStructurePopup"/>
      <separator/>
      <reference id="Console.TableResult.AddColumn"/>
      <reference id="Console.TableResult.CloneColumn"/>
      <reference id="Console.TableResult.DeleteColumns"/>
      <separator text="ORDER BY"/>
      <reference id="Console.TableResult.ColumnSortAsc"/>
      <reference id="Console.TableResult.ColumnSortDesc"/>
      <separator text="Add to ORDER BY"/>
      <reference id="Console.TableResult.ColumnSortAddAsc"/>
      <reference id="Console.TableResult.ColumnSortAddDesc"/>
      <separator/>
      <action id="Console.TableResult.ColumnLocalFilter" class="com.intellij.database.run.actions.ColumnLocalFilterAction"/>
      <separator/>
      <reference id="Console.TableResult.ColumnSortReset"/>
      <separator/>
      <action id="Console.TableResult.Header.ChangeColumnLanguage" class="com.intellij.database.run.actions.ChangeColumnLanguageAction"/>
      <reference id="Console.TableResult.ColumnDisplayTypeChange"/>
    </group>
    <action id="Console.TableResult.CompareCells" class="com.intellij.database.run.actions.CompareCellsAction">
      <keyboard-shortcut first-keystroke="control shift D" keymap="$default"/>
    </action>
    <action id="Console.TableResult.RevertSelected" class="com.intellij.database.run.actions.RevertMutations"
            use-shortcut-of="ChangesView.Revert" icon="AllIcons.General.Reset"/>
    <group id="Console.TableResult.Pagination.Group">
      <action id="Console.TableResult.FirstPage" class="com.intellij.database.run.actions.PageAction$First" icon="AllIcons.Actions.Play_first"/>
      <action id="Console.TableResult.PreviousPage" class="com.intellij.database.run.actions.PageAction$Previous" icon="AllIcons.Actions.Play_back">
        <keyboard-shortcut keymap="$default" first-keystroke="control alt UP"/>
      </action>
      <group id="Console.TableResult.ChangePageSize" class="com.intellij.database.run.actions.ChangePageSizeActionGroup"/>
      <action id="Console.TableResult.CountRows" class="com.intellij.database.run.actions.CountRowsAction"/>
      <action id="Console.TableResult.NextPage" class="com.intellij.database.run.actions.PageAction$Next" icon="AllIcons.Actions.Play_forward">
        <keyboard-shortcut keymap="$default" first-keystroke="control alt DOWN"/>
      </action>
      <action id="Console.TableResult.LastPage" class="com.intellij.database.run.actions.PageAction$Last" icon="AllIcons.Actions.Play_last"/>
    </group>
    <group id="Console.TableResult.Navigate.Group" searchable="false">
      <add-to-group group-id="EditorPopupMenu.GoTo" anchor="first"/>
      <reference id="Console.TableResult.FirstPage"/>
      <reference id="Console.TableResult.PreviousPage"/>
      <reference id="Console.TableResult.NextPage"/>
      <reference id="Console.TableResult.LastPage"/>
      <separator/>
    </group>
    <group id="Console.TableResult.GoTo" popup="true" searchable="false">
      <!-- replacement of EditorPopupMenu.GoTo for tables to avoid rubbish actions -->
      <reference id="Console.TableResult.Navigate.Group"/>
      <reference id="ShowNavBar"/>
      <reference id="GotoRow"/>
      <reference id="Console.TableResult.GotoReferencingResult"/>
    </group>
    <group id="Console.TableResult.PopupGroup">
      <reference id="Console.TableResult.Csv.SetFirstRowIsHeader"/>
      <reference id="Console.TableResult.GotoReferencedResult"/>
      <action id="Console.TableResult.EditValue" class="com.intellij.database.run.actions.EditValueAction">
        <keyboard-shortcut keymap="$default" first-keystroke="ENTER"/>
        <keyboard-shortcut keymap="$default" first-keystroke="alt ENTER"/>
        <keyboard-shortcut keymap="$default" first-keystroke="F2"/>
      </action>
      <separator/>
      <reference id="Console.TableResult.EditValueMaximized"/>
      <reference id="Console.TableResult.AggregateView"/>
      <reference id="Console.TableResult.ShowRecordView"/>
      <reference id="Console.TableResult.RevertSelected"/>
      <reference id="Console.TableResult.ChangeColumnLanguage"/>
      <reference id="Console.TableResult.ColumnDisplayTypeChange"/>
      <separator/>
      <group id="Console.TableResult.PopupGroup.CellActions" popup="false">
        <reference id="Console.TableResult.LoadFile"/>
      </group>
      <separator/>
      <action id="Console.TableResult.Copy" class="com.intellij.database.actions.GridCopyAction"
              use-shortcut-of="$Copy" icon="AllIcons.Actions.Copy"/>
      <group id="Console.TableResult.ChooseExtractor" class="com.intellij.database.run.actions.ChooseExtractorAction"/>
      <reference id="Console.TableResult.CopyAggregatorResult"/>
      <reference id="$Paste"/>
      <separator/>
      <action id="Console.TableResult.AddRow" icon="AllIcons.General.Add" class="com.intellij.database.run.actions.AddRowAction"
              use-shortcut-of="Generate"/>
      <reference id="Console.TableResult.DeleteRows"/>
      <action id="Console.TableResult.CloneRow" icon="AllIcons.Actions.Copy" class="com.intellij.database.run.actions.CloneRowAction"
              use-shortcut-of="EditorDuplicate"/>
      <separator/>
      <reference id="Console.TableResult.AddColumn"/>
      <reference id="Console.TableResult.CloneColumn"/>
      <reference id="Console.TableResult.DeleteColumns"/>
      <separator/>
      <reference id="Console.TableResult.CompareCells"/>
      <separator/>
      <reference id="Console.TableResult.GoTo"/>
    </group>
    <group id="Console.TableResult.Inlay.Chart">
      <reference id="Console.TableResult.SwitchTo.TableView"/>
      <reference id="Console.TableResult.SwitchTo.ChartView"/>
      <separator/>
      <reference id="Charts.ExportChartToPng"/>
      <reference id="Charts.ShowSeriesSettings"/>
    </group>
    <group id="StatisticsPanel.Show" popup="true" icon="com.intellij.grid.core.impl.icons.GridCoreImplIcons.StatisticsPanel" class="com.intellij.database.run.actions.StatisticsShowActionGroup">
      <action id="StatisticsPanel.Show.Off" class="com.intellij.database.run.actions.StatisticsShowAction$StatisticsShowOff"/>
      <action id="StatisticsPanel.Show.Compact" class="com.intellij.database.run.actions.StatisticsShowAction$StatisticsShowCompact"/>
      <action id="StatisticsPanel.Show.Detailed" class="com.intellij.database.run.actions.StatisticsShowAction$StatisticsShowDetailed"/>
    </group>
    <!--suppress PluginXmlCapitalization -->
    <group id="Console.TableResult.ViewAs" popup="true" icon="AllIcons.Actions.Show">
      <action id="Console.TableResult.Transpose" class="com.intellij.database.run.actions.ViewAsAction$TransposeViewAction"/>
      <separator/>
      <action id="Console.TableResult.ViewAsTable" class="com.intellij.database.run.actions.ViewAsAction$ViewAsTableAction"/>
      <action id="Console.TableResult.ViewAsTreeTable" class="com.intellij.database.run.actions.ViewAsAction$ViewAsTreeTableAction"/>
      <action id="Console.TableResult.ViewAsExtractor" class="com.intellij.database.run.actions.ViewAsAction$ViewAsExtractorAction"/>
    </group>
    <action class="com.intellij.database.actions.HideEditMaximizedAction" id="Console.TableResult.HideEditMaximized"
            icon="AllIcons.Actions.Cancel"
            use-shortcut-of="HideActiveWindow"/>
    <group id="Console.TableResult.Options" popup="true" icon="AllIcons.General.GearPlain">
      <reference id="Console.TableResult.EditValueMaximized"/>
      <reference id="Console.TableResult.AggregateView"/>
      <reference id="Console.TableResult.HideEditMaximized"/>
      <separator/>
      <action id="Console.TableResult.ToggleFilters" class="com.intellij.database.run.actions.ToggleFilterComponentAction"/>
      <group id="Console.TableResult.PasteFormat" class="com.intellij.database.run.actions.ChoosePasteFormatAction"/>
      <separator/>
      <action id="Console.TableResult.ResetView" class="com.intellij.database.run.actions.ResetViewAction"/>
      <separator/>
      <action id="DataViews.Settings.Appearance" class="com.intellij.database.run.actions.ShowDataViewsAppearanceSettingsAction" icon="AllIcons.General.Settings"/>
    </group>
    <group id="Console.TableResult.Group.Secondary">
      <reference id="Console.TableResult.ViewAs"/>
      <reference id="Console.TableResult.Options"/>
    </group>
    <group id="Console.TableResult.NavigationAndEditing.Group">
      <reference id="Console.TableResult.Pagination.Group"/>
      <separator/>
      <action id="Console.TableResult.Reload" class="com.intellij.database.run.actions.PageAction$Reload"
              icon="com.intellij.util.PlatformIcons.SYNCHRONIZE_ICON"
              use-shortcut-of="Refresh" />
      <separator/>
      <reference id="Console.TableResult.AddRow"/>
      <reference id="Console.TableResult.DeleteRows"/>
      <reference id="Console.TableResult.RevertSelected"/>
    </group>
    <group id="Console.InEditorTableResult.Horizontal.Group">
      <reference id="Console.TableResult.Pagination.Group"/>
      <separator/>
      <reference id="Console.TableResult.Reload"/>
      <separator/>
      <reference id="Console.TableResult.RevertSelected"/>
    </group>
    <group id="Console.TableResult.Group.Common">
      <reference id="Console.TableResult.NavigationAndEditing.Group"/>
    </group>
    <group id="Console.EditorTableResult.Group">
      <reference id="Console.TableResult.Group.Common"/>
      <action id="Console.TableResult.FindInGrid" class="com.intellij.database.run.actions.FindInGridAction"
              icon="AllIcons.Actions.Find"  use-shortcut-of="Find"/>
      <action id="Console.TableResult.ColumnLocalFilterToggle" class="com.intellij.database.run.actions.ColumnLocalFilterToggleAction"
              icon="com.intellij.grid.core.impl.icons.GridCoreImplIcons.ColumnFilter" />
      <reference id="Console.TableResult.ShowChart"/>
      <action id="Console.TableResult.ToggleRecordView" class="com.intellij.database.actions.ToggleEditMaximizedViewAction"
              icon="com.intellij.grid.core.impl.icons.GridCoreImplIcons.SingleRecordView"/>
    </group>
    <reference id="Console.TableResult.ChooseExtractor"/>
    <group id="Console.TableResult.ChooseExtractor.Group">
      <group id="Console.TableResult.BuiltInExtractor.Group" class="com.intellij.database.run.actions.ChooseExtractorAction$BuiltInGroup" popup="false"/>
      <separator/>
      <group id="Console.TableResult.CsvExtractors.Group" class="com.intellij.database.run.actions.ChooseExtractorAction$CsvGroup" popup="false"/>
      <action id="Console.TableResult.Copy.Csv.Settings.ForExport" class="com.intellij.database.run.actions.ShowCsvFormatsAction$ForExport"/>
      <group id="Console.TableResult.ScriptedExtractors.Group" class="com.intellij.database.run.actions.ChooseExtractorAction$ScriptedGroup" popup="false"/>
      <action id="Console.TableResult.GoToExtractorsScriptsDirectory"
              class="com.intellij.database.run.actions.ChooseExtractorAction$GoToScriptsDirectoryAction"
              icon="AllIcons.Nodes.Folder"/>
    </group>
    <group id="Console.TableResult.Csv.PreviewPopupGroup">
      <reference id="Console.TableResult.Csv.SetFirstRowIsHeader"/>
      <reference id="Console.TableResult.EditValue"/>
    </group>
    <group id="Console.TableResult.Csv.PreviewColumnHeaderPopup" popup="true">
      <reference id="Console.TableResult.Csv.SetFirstRowIsHeader"/>
      <reference id="Console.TableResult.CopyColumnName"/>
    </group>
    <action id="Console.TableResult.ShowPaginationAction" class="com.intellij.database.run.actions.ShowPaginationAction"
            icon="AllIcons.Table.Pagination"/>
    <action id="Console.TableResult.EditMaximized.MoveToRight" class="com.intellij.database.actions.MoveEditMaximizedAction$MoveEditMaximizedToRightAction" icon="AllIcons.Actions.MoveToRightTop"/>
    <action id="Console.TableResult.EditMaximized.MoveToBottom" class="com.intellij.database.actions.MoveEditMaximizedAction$MoveEditMaximizedToBottomAction" icon="AllIcons.Actions.MoveToBottomRight"/>
    <group id="Console.TableResult.EditMaximized.Value.Group">
      <action id="Console.TableResult.EditMaximized.ToggleFormattedMode" class="com.intellij.database.actions.ToggleFormattedModeInEditMaximize" icon="AllIcons.Actions.PrettyPrint"/>
      <action id="Console.TableResult.EditMaximized.ToggleSoftWrap" class="com.intellij.database.actions.ToggleSoftWrapsInEditMaximize" icon="AllIcons.Actions.ToggleSoftWrap"/>
      <separator/>
      <group popup="true" icon="AllIcons.General.GearPlain">
        <reference id="Console.TableResult.EditMaximized.MoveToRight"/>
        <reference id="Console.TableResult.EditMaximized.MoveToBottom"/>
      </group>
      <reference id="Console.TableResult.HideEditMaximized"/>
    </group>
    <group id="Console.TableResult.EditMaximized.Aggregates.Group">
      <group popup="true" icon="AllIcons.General.GearPlain">
        <reference id="Console.TableResult.EditMaximized.MoveToRight"/>
        <reference id="Console.TableResult.EditMaximized.MoveToBottom"/>
        <reference id="Console.TableResult.EnableAllAggregators"/>
        <reference id="Console.TableResult.DisableAllAggregators"/>
        <reference id="Console.TableResult.ChooseAggregators.ScriptedGroup"/>
        <reference id="Console.TableResult.GoToAggregatorsScriptsDirectory"/>
      </group>
      <reference id="Console.TableResult.HideEditMaximized"/>
    </group>
    <group id="Console.TableResult.EditMaximized.Record.Group">
      <group popup="true" icon="AllIcons.General.GearPlain">
        <reference id="Console.TableResult.EditMaximized.MoveToRight"/>
        <reference id="Console.TableResult.EditMaximized.MoveToBottom"/>
        <action id="Console.TableResult.EditMaximized.Record.ToggleLayout" class="com.intellij.database.actions.ToggleRecordViewLayoutAction"/>
      </group>
      <reference id="Console.TableResult.HideEditMaximized"/>
    </group>
    <group id="Console.TableResult.EditMaximized.Chart.Group">
      <reference id="Charts.ShowSeriesSettings"/>
      <reference id="Charts.ExportChartToPng"/>
      <group popup="true" icon="AllIcons.General.GearPlain">
        <reference id="Charts.ShowChartSettings"/>
        <reference id="Console.TableResult.EditMaximized.MoveToRight"/>
        <reference id="Console.TableResult.EditMaximized.MoveToBottom"/>
      </group>
      <reference id="Console.TableResult.HideEditMaximized"/>
    </group>
    <group id="Console.AggregateView.PopupGroup" popup="true">
      <reference ref="$Copy"/>
    </group>

    <action id="Console.TableResult.ShowDumpDialogGrid" icon="AllIcons.Actions.Download" class="com.intellij.database.dump.ShowDumpDialogGridAction"/>
    <action id="Console.TableResult.ColumnLocalFilterWithCell"
            class="com.intellij.database.run.actions.ColumnLocalFilterWithCellAction"/>
  </actions>
</idea-plugin>
 lib/grid.jar  grpc  <idea-plugin package="com.intellij.grpc">
  <id>com.intellij.grpc</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <!--suppress PluginXmlCapitalization -->
  <name>gRPC</name>
  <category>Microservices</category>
  <vendor>JetBrains</vendor>

  <description><![CDATA[
    <a href="https://grpc.io/">gRPC</a> framework support.
    <p>
    <p>
      Features:
    <ul>
      <li>Documentation for key protobuf specification elements</li>
      <li>RPCs inside Endpoints tool window</li>
      <li>Execute RPCs in HTTP-Client</li>
    </ul>
  ]]></description>

  <content>
    <module name="intellij.grpc/intelliLang"/>
  </content>

  <dependencies>
    <plugin id="com.intellij.modules.ultimate"/>
    <plugin id="com.intellij.modules.microservices"/>
    <plugin id="idea.plugin.protoeditor"/>
    <plugin id="com.jetbrains.restClient"/>
    <plugin id="com.intellij.modules.json"/>
  </dependencies>

  <resource-bundle>messages.GrpcBundle</resource-bundle>

  <extensions defaultExtensionNs="com.intellij">
    <defaultLiveTemplates file="liveTemplates/grpcRequest.xml"/>
    <microservices.endpointsProvider implementation="com.intellij.grpc.endpoints.ProtoEndpointsProvider"/>
    <lang.documentationProvider id="protoDocumentationProvider"
                                language="protobuf"
                                implementationClass="com.intellij.grpc.documentation.ProtoDocumentationProvider"/>
    <psi.referenceContributor language="HTTP Request" implementation="com.intellij.grpc.restClient.url.GrpcReferencesContributor"/>
    <codeInsight.lineMarkerProvider language="protobuf" implementationClass="com.intellij.grpc.gutter.GrpcRunRequestGutterProvider"/>
    <httpClient.requestExecutionSupport implementation="com.intellij.grpc.restClient.execution.GrpcRequestExecutionSupport"/>
    <httpClient.addRequestTemplateProvider implementation="com.intellij.grpc.restClient.GrpcAddNewRequestTemplateProvider"/>
    <httpClient.openCollectionExternalProvider implementation="com.intellij.grpc.restClient.GrpcOpenCollectionProvider"/>1

    <gotoDeclarationHandler implementation="com.intellij.grpc.json.GrpcRequestBodyGotoDeclarationHandler"
                            order="before JsonSchemaGotoDeclarationHandler"/>
    <completion.contributor language="HTTP Request"
                            implementationClass="com.intellij.grpc.completion.GrpcHttpRequestCompletionContributor"/>

    <protobuf.generatedCodeConverterProvider implementation="com.intellij.grpc.gutter.GrpcJavaGeneratedCodeConverterProvider"/>
    <protobuf.generatedCodeConverterProvider implementation="com.intellij.grpc.gutter.GrpcGoGeneratedCodeConverterProvider"/>
    <spellchecker.bundledDictionaryProvider implementation="com.intellij.grpc.GrpcBundledDictionaryProvider"/>

    <localInspection
      language="HTTP Request"
      shortName="GrpcSchemes"
      implementationClass="com.intellij.grpc.restClient.GrpcSchemesInspection"
      key="grpc.schemes.inspection.name"
      groupKey="grpc.schemes.inspection.group.name"
      enabledByDefault="true"
      level="WEAK WARNING"/>

    <dependencySupport coordinate="io.grpc:grpc-api" kind="java"/>
  </extensions>

  <extensions defaultExtensionNs="JavaScript.JsonSchema">
    <ContentAwareSchemaFileProvider implementation="com.intellij.grpc.json.GrpcJsonSchemaProviderFactory"/>
  </extensions>

  <actions>
    <action class="com.intellij.grpc.actions.CreateGrpcRequestAction" id="CreateGrpcRequestAction"
            icon="com.intellij.grpc.GrpcIcons.Procedure">
      <!--suppress PluginXmlCapitalization -->
      <synonym key="action.CreateGrpcRequestAction.synonym.text"/>
    </action>
  </actions>
</idea-plugin> lib/grpc.jar  
html-tools  #D<idea-plugin>
  <id>HtmlTools</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>HTML Tools</name>

  <description>Provides advanced features for HTML/CSS editing: inspections, quickfixes, smart navigation actions and more.</description>

  <category>HTML and XML</category>
  <depends>com.intellij.modules.xml</depends>
  <vendor>JetBrains</vendor>

  <depends>com.intellij.platform.images</depends>

  <extensions defaultExtensionNs="com.intellij">
    <psi.referenceContributor implementation="com.intellij.htmltools.xml.util.HtmlReferenceContributor"/>

    <include.provider implementation="com.intellij.htmltools.html.include.HtmlFileIncludeProvider"/>

    <fileBasedIndex implementation="com.intellij.htmltools.html.HtmlTagIdIndex"/>

    <refactoring.extractIncludeHandler language="HTML"
                                       implementationClass="com.intellij.htmltools.refactoring.lang.html.ExtractIncludeFromHTMLHandler"/>
    <refactoring.extractIncludeHandler language="XHTML"
                                       implementationClass="com.intellij.htmltools.refactoring.lang.html.ExtractIncludeFromHTMLHandler"/>

    <highlightErrorFilter implementation="com.intellij.htmltools.xml.util.XHtmlErrorFilter"/>

    <externalAnnotator language="HTML"
                       implementationClass="com.intellij.htmltools.lang.annotation.HtmlNonExistentInternetResourcesAnnotator"/>
    <externalAnnotator language="XHTML"
                       implementationClass="com.intellij.htmltools.lang.annotation.HtmlNonExistentInternetResourcesAnnotator"/>

    <customFileDropHandler implementation="com.intellij.htmltools.ide.HtmlFileDropHandler"/>

    <localInspection language="XML" shortName="HtmlPresentationalElement"
                     bundle="messages.HtmlToolsBundle" key="html.inspections.check.presentational.tag"
                     groupBundle="messages.XmlBundle" groupKey="html.inspections.group.name"
                     enabledByDefault="false" level="INFORMATION"
                     implementationClass="com.intellij.htmltools.codeInspection.htmlInspections.HtmlPresentationalElementInspection"/>
    <localInspection language="XML" shortName="HtmlDeprecatedTag"
                     bundle="messages.HtmlToolsBundle" key="html.inspections.check.deprecated.tag"
                     groupBundle="messages.XmlBundle" groupKey="html.inspections.group.name"
                     enabledByDefault="true" level="WARNING"
                     implementationClass="com.intellij.htmltools.codeInspection.htmlInspections.HtmlDeprecatedTagInspection"/>
    <localInspection language="XML" shortName="HtmlDeprecatedAttribute"
                     bundle="messages.HtmlToolsBundle" key="html.inspections.check.deprecated.attribute"
                     groupBundle="messages.XmlBundle" groupKey="html.inspections.group.name"
                     enabledByDefault="true" level="WARNING"
                     implementationClass="com.intellij.htmltools.codeInspection.htmlInspections.HtmlDeprecatedAttributeInspection"/>
    <localInspection language="XML" shortName="HtmlFormInputWithoutLabel"
                     bundle="messages.HtmlToolsBundle" key="html.inspections.form.input.without.label"
                     groupBundle="messages.XmlBundle" groupPathKey="html.inspections.group.name"
                     groupKey="html.inspections.group.name.accessibility"
                     enabledByDefault="true" level="WARNING"
                     implementationClass="com.intellij.htmltools.codeInspection.htmlInspections.HtmlFormInputWithoutLabelInspection"/>
    <localInspection language="XML" shortName="CheckImageSize"
                     bundle="messages.HtmlToolsBundle" key="html.inspections.check.image.size"
                     groupBundle="messages.XmlBundle" groupKey="html.inspections.group.name"
                     enabledByDefault="true" level="WARNING"
                     implementationClass="com.intellij.htmltools.xml.util.CheckImageSizeInspection"/>
    <localInspection language="XML" shortName="HtmlNonExistentInternetResource"
                     bundle="messages.HtmlToolsBundle" key="html.inspections.non.existent.internet.resource.name"
                     groupBundle="messages.XmlBundle" groupKey="html.inspections.group.name"
                     enabledByDefault="false" level="WARNING"
                     implementationClass="com.intellij.htmltools.codeInspection.htmlInspections.HtmlNonExistentInternetResourceInspection"/>
    <localInspection language="XML" shortName="HtmlRequiredAltAttribute"
                     bundle="messages.HtmlToolsBundle" key="html.inspections.check.required.alt"
                     groupBundle="messages.XmlBundle" groupPathKey="html.inspections.group.name"
                     groupKey="html.inspections.group.name.accessibility"
                     enabledByDefault="true" level="WARNING"
                     implementationClass="com.intellij.htmltools.codeInspection.htmlInspections.HtmlRequiredAltAttributeInspection"/>
    <localInspection language="XML" shortName="HtmlRequiredLangAttribute"
                     bundle="messages.HtmlToolsBundle" key="html.inspections.check.required.lang"
                     groupBundle="messages.XmlBundle" groupPathKey="html.inspections.group.name"
                     groupKey="html.inspections.group.name.accessibility"
                     enabledByDefault="true" level="WARNING"
                     implementationClass="com.intellij.htmltools.codeInspection.htmlInspections.HtmlRequiredLangAttributeInspection"/>
    <localInspection language="XML" shortName="HtmlRequiredTitleAttribute"
                     bundle="messages.HtmlToolsBundle" key="html.inspections.check.required.title"
                     groupBundle="messages.XmlBundle" groupPathKey="html.inspections.group.name"
                     groupKey="html.inspections.group.name.accessibility"
                     enabledByDefault="false" level="INFORMATION"
                     implementationClass="com.intellij.htmltools.codeInspection.htmlInspections.HtmlRequiredTitleAttributeInspection"/>
    <localInspection language="XML" shortName="HtmlRequiredTitleElement"
                     bundle="messages.HtmlToolsBundle" key="html.inspections.check.required.title.element"
                     groupBundle="messages.XmlBundle" groupPathKey="html.inspections.group.name"
                     groupKey="html.inspections.group.name.accessibility" enabledByDefault="true" level="WARNING"
                     implementationClass="com.intellij.htmltools.codeInspection.htmlInspections.HtmlRequiredTitleElementInspection"/>
    <localInspection language="XML" shortName="HtmlRequiredSummaryAttribute"
                     bundle="messages.HtmlToolsBundle" key="html.inspections.check.required.summary"
                     groupBundle="messages.XmlBundle" groupPathKey="html.inspections.group.name"
                     groupKey="html.inspections.group.name.accessibility"
                     enabledByDefault="false" level="INFORMATION"
                     implementationClass="com.intellij.htmltools.codeInspection.htmlInspections.HtmlRequiredSummaryAttributeInspection"/>
    <intentionAction>
      <language>XML</language>
      <className>com.intellij.htmltools.xml.util.HtmlUpdateImageSizeIntention</className>
      <bundleName>messages.XmlBundle</bundleName>
      <categoryKey>html.inspections.group.name</categoryKey>
    </intentionAction>

    <gotoSymbolContributor implementation="com.intellij.htmltools.html.HtmlGotoSymbolProvider"/>
  </extensions>

  <actions>
    <action id="HtmlAddTableColumnBefore" class="com.intellij.htmltools.xml.actions.HtmlAddTableColumnBeforeAction">
      <add-to-group anchor="last" group-id="GenerateGroup"/>
    </action>
    <action id="HtmlAddTableColumnAfter" class="com.intellij.htmltools.xml.actions.HtmlAddTableColumnAfterAction">
      <add-to-group anchor="last" group-id="GenerateGroup"/>
    </action>

    <action id="HtmlTableCellNavigateUp" class="com.intellij.htmltools.xml.actions.navigation.HtmlTableCellNavigateUpAction"/>
    <action id="HtmlTableCellNavigateDown" class="com.intellij.htmltools.xml.actions.navigation.HtmlTableCellNavigateDownAction"/>
    <action id="HtmlTableCellNavigateLeft" class="com.intellij.htmltools.xml.actions.navigation.HtmlTableCellNavigateLeftAction"/>
    <action id="HtmlTableCellNavigateRight" class="com.intellij.htmltools.xml.actions.navigation.HtmlTableCellNavigateRightAction"/>

    <!-- preserved to keep compatibility - if user configured shortcut for action, it should not be lost -->
    <action id="WebOpenInAction" class="com.intellij.htmltools.ide.browsers.actions.WebOpenInAction">
      <keyboard-shortcut keymap="$default" first-keystroke="alt F2"/>
      <keyboard-shortcut keymap="Visual Studio" first-keystroke="ctrl alt F2"/>
    </action>
  </actions>
  <resource-bundle>messages.HtmlToolsBundle</resource-bundle>
</idea-plugin>
 lib/html-tools.jar  indexing-shared  #<idea-plugin implementation-detail="true">
  <name>Shared Indexes</name>
  <id>intellij.indexing.shared.core</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <vendor>JetBrains</vendor>
  <resource-bundle>messages.SharedIndexesBundle</resource-bundle>
  <description>
    <![CDATA[
The plugin reduces overall indexing time and CPU usage by using bundled or downloaded shared indexes.
<br/>
<br/>
Check out the Shared Project Indexes plugin to build and download custom shared indexes
for a <a href="https://www.jetbrains.com/help/idea/shared-indexes.html">project</a>.
<br/>
<br/>
For more details, see the <a href="https://www.jetbrains.com/help/idea/shared-indexes.html#project-shared-indexes">detailed instructions and documentations</a>
]]>
  </description>

  <depends>com.intellij.modules.platform</depends>
  <depends>com.intellij.configurationScript</depends>
  <depends optional="true" config-file="shared-indexes-java.xml">com.intellij.java</depends>
  <depends optional="true" config-file="shared-indexes-performance-testing.xml">com.jetbrains.performancePlugin</depends>


  <extensionPoints>
    <extensionPoint qualifiedName="com.intellij.sharedIndexSuggester"
                    interface="com.intellij.indexing.shared.download.SharedIndexSuggester" dynamic="true"/>

    <extensionPoint qualifiedName="com.intellij.sharedIndexLocalFinder"
                    interface="com.intellij.indexing.shared.local.SharedIndexLocalFinder" dynamic="true"/>

    <extensionPoint qualifiedName="com.intellij.sharedIndexSuggesterConfigurable"
                    interface="com.intellij.indexing.shared.download.SharedIndexSuggesterConfigurable" dynamic="true" />

    <extensionPoint qualifiedName="com.intellij.sharedIndexDownloadExtension"
                    interface="com.intellij.indexing.shared.download.SharedIndexDownloadAuthProviderExtension" dynamic="true" />

    <extensionPoint qualifiedName="com.intellij.sharedIndexBundled"
                    beanClass="com.intellij.indexing.shared.platform.impl.BundledSharedIndexProvider" dynamic="true" />

    <extensionPoint qualifiedName="com.intellij.sharedIndexHashProvider"
                    interface="com.intellij.indexing.shared.platform.hash.SharedIndexContentHashProvider" dynamic="true"/>

    <extensionPoint qualifiedName="com.intellij.sharedIndexHashExporter"
                    interface="com.intellij.indexing.shared.platform.hash.SharedIndexContentHashExporter" dynamic="true"/>

    <extensionPoint qualifiedName="com.intellij.projectConsentDecisionOverrider"
                    interface="com.intellij.indexing.shared.download.ProjectConsentDecisionOverrider" dynamic="true"/>

    <extensionPoint qualifiedName="com.intellij.projectSharedIndexSourceProvider"
                    interface="com.intellij.indexing.shared.project.api.ProjectSharedIndexSourceProvider" dynamic="true"/>
  </extensionPoints>

  <extensions defaultExtensionNs="com.intellij">
    <registryKey key="shared.indexes.download"
                 defaultValue="true"
                 restartRequired="true"
                 description="Download shared indexes from network locations"/>

    <registryKey key="shared.indexes.download.autoCancel"
                 defaultValue="true"
                 description="Cancel shared indexes download after a stable smart mode is detected"/>

    <registryKey key="shared.indexes.download.auto.consent"
                 defaultValue="false"
                 restartRequired="true"
                 description="Download shared indexes for project and JDKs without asking for confirmation"/>

    <registryKey key="shared.indexes.use.cdn.list"
                 defaultValue="true"
                 description="Should it use CDN list feature to filter URLs"/>

    <registryKey key="shared.indexes.cache.cdn"
                 defaultValue="true"
                 description="Should it cache CDN request results"/>

    <registryKey key="shared.indexes.wait.default"
                 defaultValue="false"
                 restartRequired="true"
                 description="Should local indexing be paused to wait for shared indexes to be ready"/>

    <registryKey key="shared.indexes.download.chunk.size"
                 defaultValue="100000000"
                 description="File chunk size to download in bytes"/>

    <registryKey key="shared.indexes.download.chunk.threads"
                 defaultValue="4"
                 description="Number of threads to download shared index file chunks"/>

    <requiredForSmartModeStartupActivity implementation="com.intellij.indexing.shared.platform.impl.OnDiskSharedIndexChunkLocator" order="first, before projectIndexStartup"/>

    <applicationService serviceImplementation="com.intellij.indexing.shared.download.SharedIndexDownloadHistoryStore"/>

    <applicationService serviceInterface="com.intellij.indexing.shared.platform.impl.SharedIndexChunkConfiguration"
                        serviceImplementation="com.intellij.indexing.shared.platform.impl.SharedIndexChunkConfigurationImpl"/>

    <postStartupActivity implementation="com.intellij.indexing.shared.download.IndexDownloadServiceProjectStartupActivity"/>

    <applicationService serviceImplementation="com.intellij.indexing.shared.download.SharedIndexDownloadConsentStore"/>

    <projectConfigurable id="shared-indexes" groupId="tools"
                         instance="com.intellij.indexing.shared.download.SharedIndexConfigurable"
                         key="configuration.displayName"/>

    <fileBasedIndexInfrastructureExtension implementation="com.intellij.indexing.shared.platform.impl.SharedIndexInfrastructure"/>

    <statistics.counterUsagesCollector implementationClass="com.intellij.indexing.shared.platform.impl.SharedIndexesFusCollector"/>
    <statistics.projectUsagesCollector implementation="com.intellij.indexing.shared.platform.impl.SharedIndexesProjectStateCollector"/>
    <statistics.applicationUsagesCollector implementation="com.intellij.indexing.shared.platform.impl.SharedIndexesAppStateCollector"/>

    <notificationGroup id="Shared Indexes Recommendations" displayType="BALLOON" bundle="messages.SharedIndexesBundle" key="notificationGroup.title.shared.indexes.recommendations"/>
    <notificationGroup id="Shared Indexes Log" displayType="NONE" bundle="messages.SharedIndexesBundle" key="notificationGroup.title.shared.indexes.log"/>
    <notificationGroup id="Shared Indexes User Action Response or Request" displayType="BALLOON" bundle="messages.SharedIndexesBundle" key="notificationGroup.title.shared.indexes.user.action" hideFromSettings="true"/>

    <projectIndexingActivityHistoryListener
            implementation="com.intellij.indexing.shared.platform.impl.SharedIndexProjectIndexingHistoryListener"/>

    <postStartupActivity implementation="com.intellij.indexing.shared.platform.impl.BundledSharedIndexPostStartupActivity"/>

    <cachesInvalidator implementation="com.intellij.indexing.shared.platform.impl.SharedIndexChunkInvalidator" id="invalidateDownloadedSharedIndexes"/>

    <recoveryAction implementation="com.intellij.indexing.shared.platform.impl.DropSharedIndexesAction"/>

    <sharedIndexHashProvider implementation="com.intellij.indexing.shared.platform.hash.SharedIndexMainContentHashProvider" order="last"/>

    <sharedIndexHashProvider implementation="com.intellij.indexing.shared.platform.hash.SharedIndexCrcArchiveHashProvider" />
    <sharedIndexHashExporter implementation="com.intellij.indexing.shared.platform.hash.SharedIndexCrcArchiveHashExporter" />

    <sharedIndexDownloadExtension implementation="com.intellij.indexing.shared.download.permanentToken.PermanentAuthExtensionProvider"/>

    <dumbServiceInitializationCondition implementation="com.intellij.indexing.shared.download.SharedIndexDownloadedCondition"/>

    <sharedIndexLocalFinder implementation="com.intellij.indexing.shared.local.PredefinedJsonSharedIndexLocalFinder"/>
  </extensions>

  <projectListeners>
    <listener topic="com.intellij.openapi.project.DumbService$DumbModeListener"
              class="com.intellij.indexing.shared.download.ShadeIndexDumbModeTrackerListener" />

    <listener topic="com.intellij.openapi.roots.ModuleRootListener"
              class="com.intellij.indexing.shared.download.SharedIndexProjectRootsRefresh" />

  </projectListeners>

  <actions>
    <group id="Internal.SharedIndexes" popup="true" compact="true" internal="true">
      <action id="SharedIndexes.Download" class="com.intellij.indexing.shared.download.ShareIndexDownloadAction" internal="true"/>
      <action id="SharedIndexes.DebugDownloadCompletedNotification" class="com.intellij.indexing.shared.download.SharedIndexDownloadNotificationsDebugAction" internal="true"/>
      <action id="SharedIndexes.DebugShowConsentNotification" class="com.intellij.indexing.shared.download.IndexDownloadConsentServiceDebug" internal="true"/>
      <action id="ShowAttachedSharedIndexesAction" class="com.intellij.indexing.shared.platform.impl.ShowAttachedSharedIndexesAction" internal="true"/>
      <add-to-group group-id="Internal"/>
    </group>
  </actions>
</idea-plugin>
 lib/indexing-shared.jar  'indexing-shared-ultimate-plugin-bundled  X<idea-plugin xmlns:xi="http://www.w3.org/2001/XInclude" package="com.intellij.indexing.shared.ultimate.license">
  <name>Shared Project Indexes</name>
  <id>intellij.indexing.shared</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/> <!-- naming is hard, see IDEA-261850 -->
  <vendor>JetBrains</vendor>
  <resource-bundle>messages.SharedIndexesBundle</resource-bundle>
  <description>
    <![CDATA[
    The plugin reduces overall indexing time and CPU usage by using custom-built
    <a href="https://www.jetbrains.com/help/idea/shared-indexes.html#project-shared-indexes">project shared indexes</a>
    <br/>
    For more details, see the <a href="https://www.jetbrains.com/help/idea/shared-indexes.html">detailed instructions and documentations</a>
    ]]>
  </description>

  <dependencies>
    <plugin id="intellij.indexing.shared.core"/>
    <plugin id="com.intellij.modules.ultimate"/>
  </dependencies>

  <xi:include href="/META-INF/shared-indexes-ultimate.xml"/>

  <extensions defaultExtensionNs="com.intellij">
    <backgroundPostStartupActivity implementation="com.intellij.indexing.shared.ultimate.license.ProjectSharedIndexesLicenseActivity"/>
    <sharedIndexSuggester implementation="com.intellij.indexing.shared.ultimate.license.ProjectSharedIndexSuggester"/>
  </extensions>
</idea-plugin>
 /lib/indexing-shared-ultimate-plugin-bundled.jar  javascript-debugger  *u<idea-plugin package="com.intellij.javascript.debugger"
             xmlns:xi="http://www.w3.org/2001/XInclude">
  <name>JavaScript Debugger</name>
  <id>JavaScriptDebugger</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <vendor>JetBrains</vendor>
  <resource-bundle>messages.JSDebuggerBundle</resource-bundle>

  <dependencies>
    <plugin id="com.intellij.modules.xml"/>
    <plugin id="com.intellij.modules.javascript"/>
  </dependencies>

  <content>
    <module name="intellij.javascript.debugger.nashorn"/>
    <module name="intellij.javascript.debugger.javaee"/>
    <module name="intellij.javascript.debugger.javaee/jsp"/>
  </content>

  <depends optional="true" config-file="webDeployment.xml">com.jetbrains.plugins.webDeployment</depends>
  <depends optional="true" config-file="js-debugger-coverage.xml">com.intellij.modules.coverage</depends>
  <depends optional="true" config-file="js-debugger-features-trainer.xml">training</depends>

  <xi:include href="/META-INF/chromeConnector.xml" xpointer="xpointer(/idea-plugin/*)"><xi:fallback/></xi:include>
  <xi:include href="/META-INF/firefoxConnector.xml" xpointer="xpointer(/idea-plugin/*)"><xi:fallback/></xi:include>
  <xi:include href="/META-INF/reactNativeDebugger.xml" xpointer="xpointer(/idea-plugin/*)"><xi:fallback/></xi:include>

  <category>JavaScript Frameworks and Tools</category>
  <description><![CDATA[
    Provides debugging support for applications written in JavaScript and TypeScript.
    These can be both server-side apps, such as Node.js, React Native, or Electron, as well as client-side apps, such as React, Angular, or Vue.

    <h3>Features</h3>
    <ul>
      <li>Different types of breakpoints, such as line, exception, and conditional</li>
      <li>Setting up actions upon hitting breakpoints</li>
      <li>Establishing dependencies between breakpoints</li>
      <li>Debug tool window with interactive debugger console, call stack tab, variables and watches information</li>
      <li>Evaluating expressions</li>
      <li>Inline values in the editor</li>
      <li>Actions to step through the program</li>
      <li>Multi-session debugging</li>
      <li>Support of debugging asynchronous JavaScript code</li>
    </ul>

    <h3>Getting started</h3>
    For information on getting started, head over to the <a href="https://www.jetbrains.com/help/">documentation</a> for your IDE.
    For WebStorm, you can check out <a href="https://www.jetbrains.com/help/webstorm/debugging-code.html">this section in the documentation</a>.

    <h3>Notes</h3>
    Bundled with WebStorm and some other IntelliJ-based IDEs.
  ]]></description>

  <extensionPoints>
    <extensionPoint name="engine" interface="com.intellij.javascript.debugger.JavaScriptDebugEngine" dynamic="true"/>
    <extensionPoint name="templateLanguageHandler"
                    interface="com.intellij.javascript.debugger.breakpoints.JavaScriptTemplateLanguageHandler" dynamic="true"/>

    <extensionPoint qualifiedName="com.jetbrains.javaScriptDebugAware" dynamic="true"
                    interface="com.jetbrains.javascript.debugger.JavaScriptDebugAware"/>

    <extensionPoint qualifiedName="com.jetbrains.fileUrlMapper" interface="com.jetbrains.javascript.debugger.FileUrlMapper" dynamic="true"/>

    <extensionPoint qualifiedName="com.jetbrains.javaScriptRunnerContentProvider"
                    interface="com.intellij.javascript.debugger.RunnerContentProvider" dynamic="true"/>
  </extensionPoints>

  <actions>
    <group id="JavaScriptDebugger.HideActionsGroup">
      <add-to-group group-id="XDebugger.Variables.Tree.Popup" anchor="last"/>
    </group>
    <action id="JavaScriptDebugger.OpenUrl" class="com.intellij.javascript.debugger.actions.OpenUrlAction"/>

    <action id="XDebugger.ValueGroup.CopyJson" class="com.intellij.javascript.debugger.actions.CopyJsonAction">
      <add-to-group group-id="XDebugger.ValueGroup" anchor="after" relative-to-action="XDebugger.CopyValue"/>
    </action>

    <action id="VisualizeSourceMap" class="com.intellij.javascript.debugger.sourcemap.visualizer.actions.VisualizeSourceMapAction">
      <add-to-group group-id="EditorPopupMenu"/>
      <add-to-group group-id="ProjectViewPopupMenu"/>
      <add-to-group group-id="EditorTabPopupMenu"/>
    </action>
    <action id="AddSourcesContentToSourceMap" class="com.intellij.javascript.debugger.sourcemap.visualizer.actions.AddSourceContentsAction">
      <add-to-group group-id="EditorPopupMenu"/>
      <add-to-group group-id="ProjectViewPopupMenu"/>
      <add-to-group group-id="EditorTabPopupMenu"/>
    </action>
  </actions>

  <extensions defaultExtensionNs="com.intellij">
    <fileTypeDetector implementation="com.intellij.javascript.debugger.sourcemap.SourceMapFileType$MyFileTypeDetector"/>
    <fileType name="SourceMap" implementationClass="com.intellij.javascript.debugger.sourcemap.SourceMapFileType" fieldName="INSTANCE" patterns="*.map"/>
    <generatedSourcesFilter implementation="com.intellij.javascript.debugger.sourcemap.SourceMapGeneratedSourcesFilter"/>

    <xdebugger.settings implementation="com.intellij.javascript.debugger.settings.JavaScriptDebuggerSettings"/>
    <xdebugger.breakpointType implementation="com.intellij.javascript.debugger.breakpoints.JavaScriptBreakpointType"/>
    <xdebugger.breakpointType implementation="com.intellij.javascript.debugger.breakpoints.JavaScriptExceptionBreakpointType"/>
    <programRunner implementation="com.intellij.javascript.debugger.execution.JavaScriptDebugRunner"/>
    <configurationType implementation="com.intellij.javascript.debugger.execution.JavascriptDebugConfigurationType"/>
    <runConfigurationProducer implementation="com.intellij.javascript.debugger.execution.JavaScriptDebugConfigurationProducer" id="JavaScriptDebug"/>
    <http.localFileFinder implementation="com.intellij.javascript.debugger.execution.JavaScriptDebuggerLocalFileFinder"/>

    <httpRequestHandler implementation="com.intellij.javascript.debugger.console.ResourcesStaticServer"/>
    <httpRequestHandler implementation="com.intellij.javascript.debugger.browserConnection.IdeInfoServerHandler" order="first"/>
    <notificationGroup id="js-debugger-chrome-extension-used"
                       displayType="STICKY_BALLOON"
                       key="js.debugger.chrome.extension.used.group.name"/>

    <fileEditorProvider implementation="com.intellij.javascript.debugger.scripts.VmFileEditorProvider"/>
    <fileEditorProvider implementation="com.intellij.javascript.debugger.sourcemap.visualizer.SourcemapFileViewerProvider" fileType="SourceMap"/>
    <virtualFileSystem key="vmscript" implementationClass="com.intellij.javascript.debugger.scripts.VmScriptFileSystem"/>

    <programRunner implementation="com.intellij.javascript.debugger.execution.DebuggableProgramRunner" order="last"/>

    <registryKey key="js.debugger.break.on.first.statement" defaultValue="false"
                 description="Puts breakpoint on first statement of each script."/>
    <registryKey key="js.debugger.break.on.first.statement.karma" defaultValue="true"
                 description="Puts breakpoint on first statement of each script for Karma run configurations."/>
    <registryKey key="js.debugger.webconsole" defaultValue="true"
                 description="Enables use of javascript console implementation based on JCEF."/>
    <registryKey key="js.debugger.webconsole.maxRenderedCount" defaultValue="200000"
                 description="Maximum rendered in WebConsole messages count."/>
    <registryKey key="js.debugger.step.over.skip.same.line" defaultValue="true"/>
    <registryKey key="js.debugger.skip.native.scripts" defaultValue="true"/>
    <registryKey key="js.debugger.trace.resume" defaultValue="false"/>
    <registryKey key="js.debugger.v8.use.any.breakpoint" defaultValue="true"/>
    <registryKey key="js.debugger.chrome.use.any.breakpoint" defaultValue="true"/>
    <registryKey key="nodejs.debugger.use.jb.support" defaultValue="true"/>
    <registryKey key="js.debugger.name.mappings.by.source.code" defaultValue="true"
                 description="Use source map positions to get names matching all local symbols."/>
    <registryKey key="js.debugger.map.this.by.source.code" defaultValue="false"
                 description="Use source map positions to get name matching 'this'."/>
    <registryKey key="js.debugger.firefox.log" defaultValue=""/>
    <registryKey key="js.debugger.v8.log" defaultValue=""/>
    <registryKey key="js.debugger.wip.log" defaultValue=""/>
    <registryKey key="js.debugger.fix.jspm.source.maps" defaultValue="false"/>
    <registryKey key="js.debugger.use.preload.v8.inspector.ts" defaultValue="false"/>
    <registryKey key="js.debugger.use.vm.receiver" defaultValue="false"/>
    <registryKey key="js.debugger.auto.expressions.all.qualifiers" defaultValue="false"/>
    <registryKey key="js.debugger.async.call.stack.depth" defaultValue="10"
                 description="Enables or disables async call stacks tracking in JS debugger."/>
    <registryKey key="js.debugger.chrome.termination.policy" defaultValue="[WholeProcess*|OnlyTab|DoNothing]"
                 description="What to do with the browser instance after the debugging session finishes:
                 close the whole browser process/only the tab being debug/do nothing."/>
    <notificationGroup id="JavaScript Debugger Console" displayType="NONE" bundle="messages.JSDebuggerBundle" key="notification.group.web.console"/>
    <iconMapper mappingFile="javaScriptDebuggerIconMappings.json"/>
  </extensions>

  <extensions defaultExtensionNs="org.jetbrains">
    <javaScriptDebuggerStarter implementation="com.intellij.javascript.debugger.JavaScriptDebuggerStarterImpl" order="last"/>

    <webServerFileHandler implementation="com.intellij.javascript.debugger.sourcemap.SourceMapDetectorFileHandler"/>
  </extensions>

  <extensions defaultExtensionNs="com.jetbrains">
    <fileUrlMapper implementation="com.intellij.javascript.debugger.BuiltInWebServerFileUrlMapper" order="last"/>

    <javaScriptRunnerContentProvider implementation="com.intellij.javascript.debugger.scripts.SourcesRunnerContentProvider"/>

    <javaScriptDebugAware implementation="com.intellij.javascript.debugger.TypeScriptWebDebugAware"/>
    <javaScriptDebugAware implementation="com.intellij.javascript.debugger.TypeScriptInJSXWebDebugAware"/>
  </extensions>

  <extensions defaultExtensionNs="JavaScript">
    <runConfigurationBuilder implementation="com.intellij.javascript.debugger.execution.JavaScriptDebugConfigurationBuilder"/>
  </extensions>

  <projectListeners>
    <listener class="com.intellij.javascript.debugger.breakpoints.JavaScriptBreakpointListener"
              topic="com.intellij.xdebugger.breakpoints.XBreakpointListener"/>
  </projectListeners>
</idea-plugin>
 lib/javascript-debugger.jar lib/ChromeConnector.jar lib/FirefoxConnector.jar lib/nashorn-debugger-rt.jar lib/nashorn-debugger-9-rt.jar  javascript-intentions  4<idea-plugin>
    <name>JavaScript Intention Power Pack</name>
    <id>JSIntentionPowerPack</id>
    <version>241.17890.21</version>
    <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
    <description><![CDATA[
        The set of useful contextual actions for JavaScript.
        <p></p>
        <p>Originally developed by Olivier Descout.</p>
    ]]></description>
    <vendor>JetBrains</vendor>
    <depends>JavaScript</depends>
    <depends>com.intellij.modules.xml</depends>
    <resource-bundle>messages.JavaScriptIntentionBundle</resource-bundle>
    <category>JavaScript Frameworks and Tools</category>
    <extensions defaultExtensionNs="com.intellij">

      <!-- Numbers -->
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.number.JSConvertIntegerToDecimalIntention</className>
        <categoryKey>plugin.category.numbers</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.number.JSConvertIntegerToHexIntention</className>
        <categoryKey>plugin.category.numbers</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.number.JSConvertIntegerToOctalIntention</className>
        <categoryKey>plugin.category.numbers</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.number.JSConvertIntegerToBinaryIntention</className>
        <categoryKey>plugin.category.numbers</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.number.JSFlipArithmeticOperationIntention</className>
        <categoryKey>plugin.category.numbers</categoryKey>
      </intentionAction>


      <!-- Boolean -->
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.bool.JSDeMorgansLawIntention</className>
        <categoryKey>plugin.category.boolean</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.bool.JSRemoveBooleanEqualityIntention</className>
        <categoryKey>plugin.category.boolean</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.bool.JSNegateComparisonIntention</className>
        <categoryKey>plugin.category.boolean</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.bool.JSFlipComparisonIntention</className>
        <categoryKey>plugin.category.boolean</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.bool.JSFlipConjunctionIntention</className>
        <categoryKey>plugin.category.boolean</categoryKey>
      </intentionAction>

      <!-- Conditional -->
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.conditional.JSFlipConditionalIntention</className>
        <categoryKey>plugin.category.conditional</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.conditional.JSFlipIfIntention</className>
        <categoryKey>plugin.category.conditional</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.conditional.JSReplaceConditionalWithIfIntention</className>
        <categoryKey>plugin.category.conditional</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.trivialif.JSReplaceIfWithConditionalIntention</className>
        <categoryKey>plugin.category.conditional</categoryKey>
      </intentionAction>
      <!-- Shift -->
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.number.JSReplaceMultiplyWithShiftIntention</className>
        <categoryKey>plugin.category.shift</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.number.JSReplaceShiftWithMultiplyIntention</className>
        <categoryKey>plugin.category.shift</categoryKey>
      </intentionAction>


      <!-- Declaration -->
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.initialization.JSSplitDeclarationAndInitializationIntention</className>
        <categoryKey>plugin.category.declaration</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.initialization.JSSplitDeclarationAndMoveToScopeStartIntention</className>
        <categoryKey>plugin.category.declaration</categoryKey>
      </intentionAction>

      <!-- Comments -->
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.comment.JSChangeToCStyleCommentIntention</className>
        <categoryKey>plugin.category.comments</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.comment.JSChangeToEndOfLineCommentIntention</className>
        <categoryKey>plugin.category.comments</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.comment.JSChangeToDocCommentIntention</className>
        <categoryKey>plugin.category.comments</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.comment.JSMoveCommentToSeparateLineIntention</className>
        <categoryKey>plugin.category.comments</categoryKey>
      </intentionAction>

      <!-- Control Flow -->
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.trivialif.JSSplitElseIfIntention</className>
        <categoryKey>plugin.category.control-flow</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.trivialif.JSMergeElseIfIntention</className>
        <categoryKey>plugin.category.control-flow</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.trivialif.JSMergeIfAndIntention</className>
        <categoryKey>plugin.category.control-flow</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.trivialif.JSMergeIfOrIntention</className>
        <categoryKey>plugin.category.control-flow</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.trivialif.JSMergeParallelIfsIntention</className>
        <categoryKey>plugin.category.control-flow</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.trivialif.JSSplitIfAndIntention</className>
        <categoryKey>plugin.category.control-flow</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.trivialif.JSSplitIfOrIntention</className>
        <categoryKey>plugin.category.control-flow</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.switchtoif.JSReplaceSwitchWithIfIntention</className>
        <categoryKey>plugin.category.control-flow</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.switchtoif.JSReplaceIfWithSwitchIntention</className>
        <categoryKey>plugin.category.control-flow</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.trivialif.JSRemoveRedundantElseIntention</className>
        <categoryKey>plugin.category.control-flow</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.braces.JSAddBracesIntention</className>
        <categoryKey>plugin.category.control-flow</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.braces.JSRemoveBracesIntention</className>
        <categoryKey>plugin.category.control-flow</categoryKey>
      </intentionAction>

      <!-- Other -->
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.opassign.JSReplaceWithOperatorAssignmentIntention</className>
        <categoryKey>plugin.category.other</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.string.JSSingleToDoubleQuotedStringIntention</className>
        <categoryKey>plugin.category.other</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.string.JSDoubleToSingleQuotedStringIntention</className>
        <categoryKey>plugin.category.other</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.constant.JSConstantExpressionIntention</className>
        <categoryKey>plugin.category.other</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.constant.JSConstantSubexpressionIntention</className>
        <categoryKey>plugin.category.other</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.increment.JSExtractIncrementIntention</className>
        <categoryKey>plugin.category.other</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.object.JSSortPropertiesIntention</className>
        <categoryKey>plugin.category.other</categoryKey>
      </intentionAction>

      <!-- Flow JS-->
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.initialization.FlowJSTypeExplicitlyIntention</className>
        <categoryKey>plugin.category.flowjs</categoryKey>
      </intentionAction>

      <!-- JSX -->
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.jsx.JSXChangeAttributeQuotesIntention</className>
        <categoryKey>plugin.category.javascript.jsx</categoryKey>
      </intentionAction>
      <intentionAction>
        <language>JavaScript</language>
        <className>org.intellij.idea.lang.javascript.intention.jsx.JSXRemoveAttributeBracesIntention</className>
        <categoryKey>plugin.category.javascript.jsx</categoryKey>
      </intentionAction>
        <!--<intentionAction>-->
        <!--  <language>JavaScript</language>-->
        <!--  <className>org.intellij.idea.lang.javascript.intention.extended.JSSurroundWithIntention</className>-->
        <!--  <categoryKey>plugin.category.other</categoryKey>-->
        <!--</intentionAction>-->
      <!--<intentionAction>-->
      <!--  <language>JavaScript</language>-->
      <!--  <className>org.intellij.idea.lang.javascript.intention.extended.JSGenerateIntention</className>-->
      <!--  <categoryKey>plugin.category.other</categoryKey>-->
      <!--&lt;!&ndash;</intentionAction>&ndash;&gt;-->
      <!--<intentionAction>-->
      <!--  <language>JavaScript</language>-->
      <!--  <className>org.intellij.idea.lang.javascript.intention.extended.JSRenameIntention</className>-->
      <!--  <categoryKey>plugin.category.other</categoryKey>-->
      <!--</intentionAction>-->
    </extensions>
</idea-plugin>
 lib/javascript-intentions.jar  javascript-plugin  q<idea-plugin xmlns:xi="http://www.w3.org/2001/XInclude">
  <name>JavaScript and TypeScript</name>
  <id>JavaScript</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <category>JavaScript Frameworks and Tools</category>
  <vendor>JetBrains</vendor>
  <description><![CDATA[
    <p>Provides support for working with JavaScript and TypeScript.
    <h2>Features</h2>
    <ul>
      <li>Code completion</li>
      <li>In-product documentation</li>
      <li>Code formatting</li>
      <li>Code inspections and quick fixes</li>
      <li>Refactorings such as <i>Rename</i>, <i>Move</i>, <i>Extract Variable</i>, and more</li>
      <li>Code snippets (<i>Live Templates</i>)</li>
      <li>TypeScript Language Service support</li>
    </ul>

    <p>The plugin is bundled in IntelliJ IDEA Ultimate, WebStorm, PhpStorm, PyCharm Professional, RubyMine, GoLand, Rider, CLion.
    <h2>Getting started</h2>
<p>Open your JavaScript or TypeScript project in the IDE or create a new one.
The JavaScript and TypeScript plugin will automatically detect the presence of related files and provide its features accordingly.
<p>For more information on getting started, head over to the <a href="https://www.jetbrains.com/help/">documentation</a> for your IDE.
  ]]></description>
  <module value="com.intellij.modules.javascript"/>
  <xi:include href="js-plugin.xml" xpointer="xpointer(/idea-plugin/*)"/>

  <extensions defaultExtensionNs="com.intellij">
    <dependencyCollector kind="javascript" implementation="com.intellij.javascript.nodejs.PackageJsonDependencyCollector"/>
  </extensions>
</idea-plugin> lib/javascript-plugin.jar  
keymap-vscode  d<idea-plugin>
  <name>VSCode Keymap</name>
  <id>com.intellij.plugins.vscodekeymap</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <vendor>JetBrains</vendor>
  <category>Keymap</category>
  <description>
    VSCode keymap for all IntelliJ-based IDEs.
    Use this plugin if VSCode keymap is not pre-installed in your IDE.
  </description>
  <depends>com.intellij.modules.lang</depends>
  <extensions defaultExtensionNs="com.intellij">
    <bundledKeymap file="VSCode.xml"/>
    <bundledKeymap file="VSCode OSX.xml"/>
  </extensions>
</idea-plugin> lib/keymap-vscode.jar  llmInstaller  <idea-plugin package="com.intellij.llmInstaller" implementation-detail="true">
  <id>com.intellij.llmInstaller</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>LLM Installer</name>
  <description>
    <![CDATA[
Allows to download AI Assistant with convenient way
]]>
  </description>

  <category>Other Tools</category>
  <vendor>JetBrains</vendor>

  <content>
    <module name="intellij.llmInstaller.pycharm.community"/>
  </content>

  <resource-bundle>messages.LLMInstallerBundle</resource-bundle>

  <extensions defaultExtensionNs="com.intellij">
    <registryKey key="llm.ai.assistant.toolwindow.activation.on.start"
                 defaultValue="true"
                 description="Enables AI Assistant toolwindow activation on first start"/>

    <iconMapper mappingFile="LLMInstallerIconMappings.json"/>

    <toolWindow id="AIAssistant"
                anchor="right"
                factoryClass="com.intellij.llmInstaller.AIAssistantToolWindowFactory"
                icon="com.intellij.llmInstaller.LLMIcons.AiAssistantToolWindow"
                secondary="false"
    />
    <statistics.counterUsagesCollector implementationClass="com.intellij.llmInstaller.LlmInstallerStatistics"/>
  </extensions>

  <extensionPoints>
    <extensionPoint name="aiAssistantContentExtension"
                    interface="com.intellij.llmInstaller.AIAssistantContentExtension"
                    dynamic="true"/>
  </extensionPoints>

  <actions>
    <action id="ActivateAIAssistantToolWindow" class="com.intellij.llmInstaller.ActivateAIAssistantToolWindowAction">
      <add-to-group group-id="ActivateToolWindowActions"/>
    </action>
  </actions>

</idea-plugin>
 lib/llmInstaller.jar  makefile  H<idea-plugin>
  <id>name.kropp.intellij.makefile</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>Makefile Language</name>
  <vendor>JetBrains</vendor>
  <category>Languages</category>

  <description><![CDATA[
This plugin provides GNU Make language support:
<ul>
    <li>Syntax highlighting.</li>
    <li>Keyword and target name completion.</li>
    <li>Quick-doc for ## comments on a target line.</li>
    <li>Find Usages and Go to Symbol navigation for targets.</li>
    <li>Prerequisites resolution.</li>
    <li>Rules, variables, and conditionals folding.</li>
    <li>Quick-fixes to create new rules from unresolved prerequisites and remove empty rules.</li>
</ul>

In addition, the plugin provides support for running Make targets using:
<ul>
    <li>Make tool window</li>
    <li>Makefile run configurations</li>
    <li>Gutter icons</li>
    <li>Context actions</li>
</ul>

Plugin source code was previously located at <a href="https://github.com/kropp/intellij-makefile/">https://github.com/kropp/intellij-makefile/</a>
    ]]></description>

  <depends>com.intellij.modules.lang</depends>
  <depends optional="true" config-file="terminal-config.xml">org.jetbrains.plugins.terminal</depends>

  <extensions defaultExtensionNs="com.intellij">
    <fileType name="Makefile" language="Makefile" implementationClass="com.jetbrains.lang.makefile.MakefileFileType" fieldName="INSTANCE" extensions="mk" fileNamesCaseInsensitive="makefile;GNUmakefile"/>
    <lang.parserDefinition language="Makefile" implementationClass="com.jetbrains.lang.makefile.MakefileParserDefinition"/>
    <lang.syntaxHighlighterFactory language="Makefile" implementationClass="com.jetbrains.lang.makefile.MakefileSyntaxHighlighterFactory"/>
    <lang.foldingBuilder language="Makefile" implementationClass="com.jetbrains.lang.makefile.MakefileFoldingBuilder"/>
    <annotator language="Makefile" implementationClass="com.jetbrains.lang.makefile.MakefileAnnotator"/>
    <lang.psiStructureViewFactory language="Makefile" implementationClass="com.jetbrains.lang.makefile.MakefileStructureViewFactory"/>
    <lang.commenter language="Makefile" implementationClass="com.jetbrains.lang.makefile.MakefileCommenter"/>
    <lang.findUsagesProvider language="Makefile" implementationClass="com.jetbrains.lang.makefile.MakefileFindUsagesProvider"/>
    <lang.braceMatcher language="Makefile" implementationClass="com.jetbrains.lang.makefile.MakefileBraceMatcherProvider" />
    <codeBlockSupportHandler language="Makefile" implementationClass="com.jetbrains.lang.makefile.MakefileCodeBlockSupportHandler"/>
    <gotoSymbolContributor implementation="com.jetbrains.lang.makefile.MakefileChooseByNameContributor"/>
    <colorSettingsPage implementation="com.jetbrains.lang.makefile.MakefileColorSettingsPage"/>
    <completion.contributor language="Makefile" implementationClass="com.jetbrains.lang.makefile.MakefileCompletionContributor"/>
    <configurationType implementation="com.jetbrains.lang.makefile.MakefileRunConfigurationType"/>
    <projectConfigurable groupId="build.tools" groupWeight="110" id="reference.settingsdialog.project.make"
                         instance="com.jetbrains.lang.makefile.MakeConfigurable"
                         key="configurable.name" bundle="messages.MakefileLangBundle"/>
    <runLineMarkerContributor language="Makefile" implementationClass="com.jetbrains.lang.makefile.MakefileTargetRunLineMarkerContributor"/>
    <runConfigurationProducer implementation="com.jetbrains.lang.makefile.MakefileRunConfigurationProducer"/>
    <codeStyleSettingsProvider implementation="com.jetbrains.lang.makefile.MakefileCodeStyleSettingsProvider"/>
    <langCodeStyleSettingsProvider implementation="com.jetbrains.lang.makefile.MakefileLangCodeStyleSettingsProvider"/>
    <lang.elementManipulator implementationClass="com.jetbrains.lang.makefile.psi.MakefileFunctionManipulator"
                             forClass="com.jetbrains.lang.makefile.psi.MakefileFunction"/>
    <lang.elementManipulator implementationClass="com.jetbrains.lang.makefile.psi.MakefilePrerequisiteManipulator"
                             forClass="com.jetbrains.lang.makefile.psi.MakefilePrerequisite"/>
    <lang.elementManipulator implementationClass="com.jetbrains.lang.makefile.psi.MakefileRecipeManipulator"
                             forClass="com.jetbrains.lang.makefile.psi.MakefileRecipe"/>
    <lang.elementManipulator implementationClass="com.jetbrains.lang.makefile.psi.MakefileSubstitutionManipulator"
                             forClass="com.jetbrains.lang.makefile.psi.MakefileSubstitution"/>
    <lang.elementManipulator implementationClass="com.jetbrains.lang.makefile.psi.MakefileVariableUsageManipulator"
                             forClass="com.jetbrains.lang.makefile.psi.MakefileVariableUsage"/>
    <documentationProvider implementation="com.jetbrains.lang.makefile.MakefileDocumentationProvider"/>
    <spellchecker.support language="Makefile" implementationClass="com.jetbrains.lang.makefile.MakefileSpellcheckingStrategy" />
    <multiHostInjector implementation="com.jetbrains.lang.makefile.MakefileShellLanguageInjector"/>

    <stubElementTypeHolder class="com.jetbrains.lang.makefile.psi.MakefileTypes" />
    <stubIndex implementation="com.jetbrains.lang.makefile.MakefileTargetIndex" />

    <toolWindow id="make" anchor="right" icon="MakefileIcons.MakefileToolWindow" factoryClass="com.jetbrains.lang.makefile.toolWindow.MakeToolWindowFactory" secondary="true"/>

    <internalFileTemplate name="Makefile" />
    <iconMapper mappingFile="MakefileIconMappings.json"/>

    <localInspection language="Makefile"
                     groupKey="makefile.inspection.group.name"
                     shortName="MakefileUnresolvedPrerequisite"
                     bundle="messages.MakefileLangBundle"
                     key="make.unresolved.prerequisite.inspection.name"
                     enabledByDefault="true"
                     level="WEAK WARNING"
                     implementationClass="com.jetbrains.lang.makefile.inspections.MakefileUnresolvedPrerequisiteInspection" />
  </extensions>

  <extensionPoints>
    <extensionPoint qualifiedName="com.intellij.makefile.toolWindowStripeController"
                    interface="com.jetbrains.lang.makefile.toolWindow.MakefileToolWindowStripeController" dynamic="true"/>
  </extensionPoints>

  <actions>
  </actions>

</idea-plugin>
 lib/makefile.jar  markdown  <idea-plugin package="org.intellij.plugins.markdown">
  <id>org.intellij.plugins.markdown</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>Markdown</name>
  <vendor>JetBrains</vendor>
  <category>Languages</category>
  <resource-bundle>messages.MarkdownBundle</resource-bundle>

  <dependencies>
    <plugin id="com.intellij.modules.lang"/>
  </dependencies>
  <content>
    <module name="intellij.markdown.fenceInjection"/>
    <module name="intellij.markdown.frontmatter"/>
    <module name="intellij.markdown.frontmatter.yaml"/>
    <module name="intellij.markdown.frontmatter.toml"/>
    <module name="intellij.markdown.images"/>
    <module name="intellij.markdown.xml"/>
    <module name="intellij.markdown.model"/>
    <module name="intellij.markdown.spellchecker"/>
  </content>

  <description><![CDATA[
<p>Provides editing assistance for Markdown files within the IDE.</p>
</br>
<ul>
<li>Full support for vanilla Markdown syntax: highlighting, completion, navigation, inspection, intentions, and much more.</li>
<li>Live HTML preview, customizable with CSS (except Android Studio, see <a href="https://issuetracker.google.com/issues/159933628?pli=1#comment7">issue and workaround</a>).</li>
<li>Assistance for editing tables and lists: automatic alignment and numbering.</li>
<li>Drag and drop to insert images.</li>
<li>Language injection in code blocks.</li>
<li>Pandoc Converter for HTML, Microsoft Word, and PDF formats.</li>
<li>Support for PlantUML diagram rendering (you can add support for Mermaid diagrams with a <a href="https://plugins.jetbrains.com/plugin/20146-mermaid">separate plugin</a>).</li>
</ul>
]]></description>

  <extensionPoints>
    <extensionPoint qualifiedName="org.intellij.markdown.html.panel.provider"
                    interface="org.intellij.plugins.markdown.ui.preview.MarkdownHtmlPanelProvider"
                    dynamic="true"/>
    <extensionPoint qualifiedName="org.intellij.markdown.fenceLanguageProvider"
                    interface="org.intellij.plugins.markdown.injection.CodeFenceLanguageProvider"
                    dynamic="true"/>
    <extensionPoint qualifiedName="org.intellij.markdown.fenceGeneratingProvider"
                    interface="org.intellij.plugins.markdown.extensions.CodeFenceGeneratingProvider"
                    dynamic="true"/>
    <extensionPoint qualifiedName="org.intellij.markdown.previewStylesProvider"
                    interface="org.intellij.plugins.markdown.ui.preview.MarkdownPreviewStylesProvider"
                    dynamic="true"/>
    <extensionPoint qualifiedName="org.intellij.markdown.browserPreviewExtensionProvider"
                    interface="org.intellij.plugins.markdown.extensions.MarkdownBrowserPreviewExtension$Provider"
                    dynamic="true"/>
    <extensionPoint qualifiedName="org.intellij.markdown.markdownExportProvider"
                    interface="org.intellij.plugins.markdown.fileActions.export.MarkdownExportProvider"
                    dynamic="true"/>
    <extensionPoint qualifiedName="org.intellij.markdown.markdownRunner"
                    interface="org.intellij.plugins.markdown.extensions.jcef.commandRunner.MarkdownRunner"
                    dynamic="true"/>
    <extensionPoint qualifiedName="org.intellij.markdown.flavourProvider"
                    interface="org.intellij.plugins.markdown.lang.parser.MarkdownFlavourProvider"
                    dynamic="true"/>
    <extensionPoint qualifiedName="org.intellij.markdown.additionalFenceLanguageSuggester"
                    interface="org.intellij.plugins.markdown.injection.aliases.AdditionalFenceLanguageSuggester"
                    dynamic="true"/>
  </extensionPoints>

  <extensions defaultExtensionNs="com.intellij">
    <typedHandler implementation="org.intellij.plugins.markdown.editor.tables.handlers.MarkdownTableTypedHandler"/>
    <backspaceHandlerDelegate implementation="org.intellij.plugins.markdown.editor.tables.handlers.MarkdownTableBackspaceHandler"/>
    <enterHandlerDelegate implementation="org.intellij.plugins.markdown.editor.tables.handlers.MarkdownTableEnterHandler"/>
    <editorActionHandler action="EditorTab" implementationClass="org.intellij.plugins.markdown.editor.tables.handlers.MarkdownTableTabHandler$Tab"/>
    <editorActionHandler action="EditorUnindentSelection" implementationClass="org.intellij.plugins.markdown.editor.tables.handlers.MarkdownTableTabHandler$ShiftTab"/>
    <editorActionHandler action="EditorStartNewLine" implementationClass="org.intellij.plugins.markdown.editor.tables.handlers.MarkdownTableShiftEnterHandler"/>
    <editorActionHandler action="EditorDeleteToWordStart" implementationClass="org.intellij.plugins.markdown.editor.tables.handlers.MarkdownTableReformatAfterActionHook"/>
    <codeInsight.inlayProvider language="Markdown"
                               implementationClass="org.intellij.plugins.markdown.editor.tables.ui.MarkdownTableInlayProvider"
                               id="MarkdownTableInlayProvider"/>
    <editorFactoryListener implementation="org.intellij.plugins.markdown.editor.tables.ui.MarkdownInlayUpdateOnSoftWrapListener"/>

    <localInspection language="Markdown"
                     shortName="MarkdownIncorrectTableFormatting"
                     bundle="messages.MarkdownBundle"
                     key="markdown.incorrect.table.formatting.inspection.name"
                     groupKey="markdown.inspection.group.ruby.name"
                     enabledByDefault="true"
                     level="WEAK WARNING"
                     implementationClass="org.intellij.plugins.markdown.editor.tables.inspections.MarkdownIncorrectTableFormattingInspection"/>

    <localInspection language="Markdown"
                     shortName="MarkdownNoTableBorders"
                     bundle="messages.MarkdownBundle"
                     key="markdown.no.table.borders.inspection.name"
                     groupKey="markdown.inspection.group.ruby.name"
                     enabledByDefault="true"
                     level="WARNING"
                     implementationClass="org.intellij.plugins.markdown.editor.tables.inspections.MarkdownNoTableBordersInspection"/>

    <intentionAction>
      <language>Markdown</language>
      <className>org.intellij.plugins.markdown.editor.tables.intentions.MarkdownInsertTableColumnIntention$InsertBefore</className>
      <bundleName>messages.MarkdownBundle</bundleName>
      <categoryKey>markdown.intention.category</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>Markdown</language>
      <className>org.intellij.plugins.markdown.editor.tables.intentions.MarkdownInsertTableColumnIntention$InsertAfter</className>
      <bundleName>messages.MarkdownBundle</bundleName>
      <categoryKey>markdown.intention.category</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>Markdown</language>
      <className>org.intellij.plugins.markdown.editor.tables.intentions.MarkdownSetColumnAlignmentIntention</className>
      <bundleName>messages.MarkdownBundle</bundleName>
      <categoryKey>markdown.intention.category</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>Markdown</language>
      <className>org.intellij.plugins.markdown.editor.tables.intentions.MarkdownRemoveColumnIntention</className>
      <bundleName>messages.MarkdownBundle</bundleName>
      <categoryKey>markdown.intention.category</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>Markdown</language>
      <className>org.intellij.plugins.markdown.editor.tables.intentions.MarkdownRemoveRowIntention</className>
      <bundleName>messages.MarkdownBundle</bundleName>
      <categoryKey>markdown.intention.category</categoryKey>
    </intentionAction>

    <typedHandler implementation="org.intellij.plugins.markdown.editor.headers.HeaderLevelInferenceTypedHandler"/>

    <codeInsight.fillParagraph language="Markdown"
                               implementationClass="org.intellij.plugins.markdown.editor.MarkdownParagraphFillHandler"/>

    <renameHandler implementation="org.intellij.plugins.markdown.ui.projectTree.MarkdownFileRenameHandler"/>
    <automaticRenamerFactory implementation="org.intellij.plugins.markdown.ui.projectTree.MarkdownRenamerFactory"/>

    <fileType name="Markdown" extensions="markdown;md" language="Markdown"
              implementationClass="org.intellij.plugins.markdown.lang.MarkdownFileType" fieldName="INSTANCE"/>
    <lang.fileViewProviderFactory language="Markdown"
                                  id="SingleRootMarkdownFileViewProviderFactory"
                                  implementationClass="org.intellij.plugins.markdown.lang.MarkdownFileViewProviderFactory"/>
    <lang.parserDefinition language="Markdown" implementationClass="org.intellij.plugins.markdown.lang.parser.MarkdownParserDefinition"/>
    <lang.ast.factory language="Markdown" implementationClass="org.intellij.plugins.markdown.lang.psi.MarkdownAstFactory"/>

    <lang.elementManipulator forClass="org.intellij.plugins.markdown.lang.psi.impl.MarkdownCodeFence"
                             implementationClass="org.intellij.plugins.markdown.lang.psi.impl.MarkdownCodeFence$Manipulator"/>
    <lang.elementManipulator forClass="org.intellij.plugins.markdown.lang.psi.impl.MarkdownLinkDestination"
                             implementationClass="org.intellij.plugins.markdown.lang.psi.impl.MarkdownLinkDestination$Manipulator"/>
    <lang.elementManipulator forClass="org.intellij.plugins.markdown.lang.psi.impl.MarkdownFrontMatterHeader"
                             implementationClass="org.intellij.plugins.markdown.lang.psi.impl.MarkdownFrontMatterHeader$Manipulator"/>

    <colorSettingsPage implementation="org.intellij.plugins.markdown.highlighting.MarkdownColorSettingsPage"/>
    <syntaxHighlighter key="Markdown" implementationClass="org.intellij.plugins.markdown.highlighting.MarkdownSyntaxHighlighter"/>
    <additionalTextAttributes scheme="Default" file="colorSchemes/MarkdownDefault.xml"/>
    <additionalTextAttributes scheme="Darcula" file="colorSchemes/MarkdownDarcula.xml"/>

    <braceMatcher filetype="Markdown" implementationClass="org.intellij.plugins.markdown.braces.MarkdownBraceMatcher"/>
    <quoteHandler fileType="Markdown" className="org.intellij.plugins.markdown.braces.MarkdownQuoteHandler"/>
    <typedHandler implementation="org.intellij.plugins.markdown.editor.MarkdownTypedHandler"/>

    <bidiRegionsSeparator language="Markdown" implementationClass="org.intellij.plugins.markdown.editor.MarkdownBidiRegionsSeparator"/>

    <annotator language="Markdown" implementationClass="org.intellij.plugins.markdown.highlighting.MarkdownHighlightingAnnotator"/>

    <runLineMarkerContributor language="Markdown" implementationClass="org.intellij.plugins.markdown.extensions.jcef.commandRunner.MarkdownRunLineMarkersProvider"/>

    <completion.contributor language="Markdown"
                            implementationClass="org.intellij.plugins.markdown.editor.MarkdownCompletionContributor"/>

    <fileEditorProvider id="markdown-preview-editor" implementation="org.intellij.plugins.markdown.ui.preview.MarkdownSplitEditorProvider"/>
    <textEditorCustomizer implementation="org.intellij.plugins.markdown.ui.floating.AddFloatingToolbarTextEditorCustomizer"/>

    <customFileDropHandler implementation="org.intellij.plugins.markdown.fileActions.importFrom.docx.MarkdownDocxFileDropHandler"/>

    <breadcrumbsInfoProvider id="MarkdownDefaultBreadcrumbs"
                             implementation="org.intellij.plugins.markdown.breadcrumbs.MarkdownBreadcrumbsProvider"/>

    <treeStructureProvider implementation="org.intellij.plugins.markdown.ui.projectTree.MarkdownTreeStructureProvider"/>

    <applicationService serviceInterface="org.intellij.plugins.markdown.extensions.ExtensionsExternalFilesPathManager"
                        serviceImplementation="org.intellij.plugins.markdown.extensions.ExtensionsExternalFilesPathManager$Impl"/>
    <search.optionContributor implementation="org.intellij.plugins.markdown.extensions.ExtensionSearchableOptionContributor"/>

    <applicationService serviceInterface="org.intellij.plugins.markdown.ui.preview.accessor.MarkdownLinkOpener"
                        serviceImplementation="org.intellij.plugins.markdown.ui.preview.accessor.impl.MarkdownLinkOpenerImpl"/>

    <projectConfigurable id="Settings.Markdown"
                         bundle="messages.MarkdownBundle"
                         groupId="language"
                         nonDefaultProject="false"
                         key="markdown.settings.name"
                         instance="org.intellij.plugins.markdown.settings.MarkdownSettingsConfigurable"/>

    <editorSmartKeysConfigurable instance="org.intellij.plugins.markdown.settings.MarkdownSmartKeysConfigurable"
                                 id="editor.preferences.markdownOptions"/>

    <codeFoldingOptionsProvider instance="org.intellij.plugins.markdown.settings.MarkdownCodeFoldingOptionsProvider"/>

    <applicationService serviceImplementation="org.intellij.plugins.markdown.ui.preview.html.MarkdownCodeFenceHtmlCache"/>
    <applicationService serviceImplementation="org.intellij.plugins.markdown.fileActions.export.MarkdownHtmlExportSettings"/>

    <applicationService serviceImplementation="org.intellij.plugins.markdown.settings.MarkdownCodeFoldingSettings" />
    <applicationService serviceImplementation="org.intellij.plugins.markdown.settings.MarkdownCodeInsightSettings" />
    <applicationService serviceImplementation="org.intellij.plugins.markdown.settings.MarkdownExtensionsSettings" />

    <lang.psiStructureViewFactory language="Markdown"
                                  implementationClass="org.intellij.plugins.markdown.structureView.MarkdownStructureViewFactory"/>
    <stripTrailingSpacesFilterFactory implementation="org.intellij.plugins.markdown.editor.MarkdownStripTrailingSpacesFilterFactory"/>
    <httpRequestHandler implementation="org.intellij.plugins.markdown.ui.preview.PreviewStaticServer"/>

    <localInspection language="Markdown"
                     shortName="MarkdownUnresolvedFileReference"
                     bundle="messages.MarkdownBundle"
                     key="markdown.unresolved.file.inspection.name"
                     groupKey="markdown.inspection.group.ruby.name"
                     enabledByDefault="true"
                     level="WARNING"
                     implementationClass="org.intellij.plugins.markdown.lang.references.paths.MarkdownUnresolvedFileReferenceInspection"/>

    <lang.foldingBuilder language="Markdown" implementationClass="org.intellij.plugins.markdown.folding.MarkdownFoldingBuilder"/>

    <stubIndex implementation="org.intellij.plugins.markdown.lang.index.HeaderTextIndex"/>
    <stubElementTypeHolder class="org.intellij.plugins.markdown.lang.MarkdownStubElementTypes"/>
    <stubIndex implementation="org.intellij.plugins.markdown.lang.index.HeaderAnchorIndex"/>

    <pathReferenceProvider implementation="org.intellij.plugins.markdown.lang.references.paths.RelativeFileWithoutExtensionReferenceProvider"/>
    <psi.referenceContributor language="Markdown" implementation="org.intellij.plugins.markdown.lang.references.CommonLinkDestinationReferenceContributor"/>
    <psi.referenceContributor language="Markdown" implementation="org.intellij.plugins.markdown.lang.references.paths.github.GithubWikiLocalReferenceContributor"/>

    <lang.elementManipulator forClass="org.intellij.plugins.markdown.lang.psi.impl.MarkdownAutoLink"
                             implementationClass="org.intellij.plugins.markdown.lang.psi.impl.MarkdownAutoLink$Manipulator"/>
    <psi.referenceContributor language="Markdown" implementation="org.intellij.plugins.markdown.lang.references.AutoLinkWebReferenceContributor"/>

    <todoIndexer filetype="Markdown" implementationClass="org.intellij.plugins.markdown.highlighting.MarkdownTodoIndexer"/>
    <indexPatternBuilder implementation="org.intellij.plugins.markdown.highlighting.MarkdownIndexPatternBuilder"/>
    <enterHandlerDelegate id="MarkdownEnterHandler"
                          implementation="org.intellij.plugins.markdown.editor.MarkdownEnterHandler"/>

    <daemon.highlightInfoFilter implementation="org.intellij.plugins.markdown.injection.CodeFenceHighlightInfoFilter"/>

    <extendWordSelectionHandler implementation="org.intellij.plugins.markdown.editor.MarkdownCodeSpanExtendWordSelectionHandler"/>

    <typedHandler implementation="org.intellij.plugins.markdown.editor.lists.MarkdownListItemCreatingTypedHandlerDelegate"/>

    <lineIndentProvider implementation="org.intellij.plugins.markdown.editor.lists.MarkdownListIndentProvider"/>
    <enterHandlerDelegate implementation="org.intellij.plugins.markdown.editor.lists.MarkdownListEnterHandlerDelegate"
                          order="before MarkdownEnterHandler"/> <!-- to be able to handle Enter inside indent -->

    <backspaceHandlerDelegate implementation="org.intellij.plugins.markdown.editor.lists.MarkdownListMarkerBackspaceHandlerDelegate"/>
    <backspaceHandlerDelegate implementation="org.intellij.plugins.markdown.editor.lists.MarkdownListIndentBackspaceHandlerDelegate"
                              order="before SmartIndentingBackspaceHandler"/>

    <editorActionHandler action="EditorTab" implementationClass="org.intellij.plugins.markdown.editor.lists.MarkdownListItemTabHandler"/>
    <editorActionHandler action="EditorIndentSelection"
                         implementationClass="org.intellij.plugins.markdown.editor.lists.MarkdownListItemTabHandler"/>
    <editorActionHandler action="EditorUnindentSelection"
                         implementationClass="org.intellij.plugins.markdown.editor.lists.MarkdownListItemUnindentHandler"/>

    <localInspection language="Markdown"
                     shortName="MarkdownIncorrectlyNumberedListItem"
                     bundle="messages.MarkdownBundle"
                     key="markdown.incorrectly.numbered.list.item.inspection.name"
                     groupKey="markdown.inspection.group.ruby.name"
                     enabledByDefault="true"
                     implementationClass="org.intellij.plugins.markdown.editor.lists.inspections.IncorrectListNumberingInspection"/>

    <actionPromoter implementation="org.intellij.plugins.markdown.ui.actions.MarkdownActionPromoter"/>
    <customizableActionGroupProvider implementation="org.intellij.plugins.markdown.ui.floating.FloatingToolbarCustomizableGroupProvider"/>

    <!--Formatting-->
    <langCodeStyleSettingsProvider implementation="org.intellij.plugins.markdown.lang.formatter.settings.MarkdownCodeStyleSettingsProvider"/>
    <lang.formatter language="Markdown" implementationClass="org.intellij.plugins.markdown.lang.formatter.MarkdownFormattingModelBuilder"/>
    <postFormatProcessor implementation="org.intellij.plugins.markdown.lang.formatter.BlockQuotePostFormatProcessor"/>
    <postFormatProcessor implementation="org.intellij.plugins.markdown.lang.formatter.TablePostFormatProcessor"/>
    <lang.lineWrapStrategy language="Markdown" implementationClass="org.intellij.plugins.markdown.editor.MarkdownLineWrapPositionStrategy"/>

    <lang.commenter language="Markdown" implementationClass="org.intellij.plugins.markdown.lang.MarkdownCommenter"/>

    <codeInsight.lineMarkerProvider language="Markdown"
                                    implementationClass="org.intellij.plugins.markdown.extensions.common.plantuml.PlantUMLCodeFenceDownloadLineMarkerProvider"/>

    <focusModeProvider language="Markdown" implementationClass="org.intellij.plugins.markdown.editor.MarkdownFocusModeProvider"/>

    <codeInsight.lineMarkerProvider language="Markdown"
                                    implementationClass="org.intellij.plugins.markdown.extensions.jcef.mermaid.MermaidLineMarkerAdvertisementProvider"/>

    <intentionAction>
      <language>Markdown</language>
      <className>org.intellij.plugins.markdown.injection.MarkdownCodeFenceErrorHighlightingIntention</className>
      <bundleName>messages.MarkdownBundle</bundleName>
      <categoryKey>markdown.intention.category</categoryKey>
    </intentionAction>

    <localInspection language="Markdown"
                     shortName="MarkdownOutdatedTableOfContents"
                     bundle="messages.MarkdownBundle"
                     key="markdown.outdated.table.of.contents.inspection.name"
                     groupKey="markdown.inspection.group.ruby.name"
                     enabledByDefault="true"
                     implementationClass="org.intellij.plugins.markdown.editor.toc.OutdatedTableOfContentsInspection"/>

    <localInspection language="Markdown"
                     shortName="MarkdownLinkDestinationWithSpaces"
                     bundle="messages.MarkdownBundle"
                     key="markdown.link.destination.with.spaces.inspection.name"
                     groupKey="markdown.inspection.group.ruby.name"
                     enabledByDefault="true"
                     implementationClass="org.intellij.plugins.markdown.lang.references.paths.MarkdownLinkDestinationWithSpacesInspection"/>

    <notificationGroup id="Markdown" displayType="BALLOON" bundle="messages.MarkdownBundle" key="notification.group.markdown"/>

    <!--region Registry keys-->
    <registryKey key="markdown.clear.cache.interval"
                 defaultValue="600000"
                 description="Interval in milliseconds defining how often Markdown plugin caches (e.g. PlantUML diagrams) should be cleared"/>
    <registryKey key="markdown.plantuml.download.link"
                 defaultValue="https://download.jetbrains.com/grazie/markdown/extensions/plantuml/plantuml-1.2023.10-15.jar"
                 description="Link which Markdown plugin will use to download PlantUML JAR"/>
    <registryKey key="markdown.open.link.in.external.browser"
                 defaultValue="true"
                 description="Open Markdown link in an external browser (otherwise open in the IDE viewer)"/>
    <registryKey key="markdown.formatter.apply.to.code.fence"
                 defaultValue="false"
                 description="Should Markdown use injected languages' formatters to format code-fences"/>
    <registryKey key="markdown.structure.view.list.visibility"
                 defaultValue="false"
                 description="Determines whether lists are visible in the document structure view"/>

    <registryKey key="markdown.export.html.enforce.csp"
                 defaultValue="true"
                 description="Determines whether the content security policy should be added to the exported HTML document."/>

    <registryKey key="markdown.experimental.boundary.precise.scroll.enable"
                 defaultValue="true"
                 description="Enables precise scrolling on the document boundaries (direct passing of scroll events from IDE to JCEF preview).
                              Any opened Markdown editors should be manually reopened.
                              Use 'ide.browser.jcef.osr.wheelRotation.factor' to adjust swing's mouse wheel event multipler."/>

    <registryKey key="markdown.experimental.header.level.inference.enable"
                 defaultValue="false"
                 description="Enables experimental support for inferring header level"/>

    <registryKey key="markdown.validate.short.links"
                 defaultValue="false"
                 description="Enables validation for short style links by checking existing labeled link definitions in the current file."/>

    <registryKey key="markdown.experimental.show.frontmatter.in.preview"
                 defaultValue="false"
                 description="Enables displaying of front matter headers in the preview."/>

    <registryKey key="markdown.experimental.allow.external.requests"
                 defaultValue="true"
                 description="Enables requests for external resources from the preview (e.g. non-local images)."/>
    <!--endregion-->

    <advancedSetting id="markdown.hide.floating.toolbar" default="false" groupKey="markdown.settings.name"/>
    <advancedSetting id="markdown.squash.multiple.dashes.in.header.anchors" default="false" groupKey="markdown.settings.name"/>

    <statistics.counterUsagesCollector implementationClass="org.intellij.plugins.markdown.MarkdownUsageCollector"/>
    <iconMapper mappingFile="MarkdownCoreIconMappings.json"/>
  </extensions>

  <applicationListeners>
    <listener topic="com.intellij.ide.ui.LafManagerListener"
              class="org.intellij.plugins.markdown.settings.SettingsChangeLafListener"/>
    <listener topic="com.intellij.ide.ui.LafManagerListener"
              class="org.intellij.plugins.markdown.extensions.common.highlighter.HtmlCacheManager$InvalidateHtmlCacheLafListener"/>
  </applicationListeners>

  <projectListeners>
    <listener topic="org.intellij.plugins.markdown.settings.MarkdownSettings$ChangeListener"
              class="org.intellij.plugins.markdown.injection.MarkdownCodeFenceErrorHighlightingIntention$CodeAnalyzerRestartListener"/>
  </projectListeners>

  <extensions defaultExtensionNs="org.intellij.markdown">
    <html.panel.provider implementation="org.intellij.plugins.markdown.ui.preview.jcef.JCEFHtmlPanelProvider"/>

    <fenceLanguageProvider implementation="org.intellij.plugins.markdown.extensions.common.plantuml.PlantUMLCodeFenceLanguageProvider"/>
    <!--suppress PluginXmlValidity -->
    <fenceGeneratingProvider implementation="org.intellij.plugins.markdown.extensions.common.plantuml.PlantUMLCodeGeneratingProvider"/>

    <!--suppress PluginXmlValidity -->
    <fenceGeneratingProvider order="last"
                             implementation="org.intellij.plugins.markdown.extensions.common.highlighter.MarkdownCodeFencePreviewHighlighter"/>
    <browserPreviewExtensionProvider implementation="org.intellij.plugins.markdown.extensions.common.BaseStylesExtension$Provider"/>
    <browserPreviewExtensionProvider implementation="org.intellij.plugins.markdown.extensions.common.InlineStylesExtension$Provider"/>

    <browserPreviewExtensionProvider implementation="org.intellij.plugins.markdown.extensions.jcef.ProcessLinksExtension$Provider"/>
    <browserPreviewExtensionProvider implementation="org.intellij.plugins.markdown.extensions.jcef.commandRunner.CommandRunnerExtension$Provider"/>

    <fenceLanguageProvider id="DefaultMermaidCodeFenceLanguageProvider"
                           implementation="org.intellij.plugins.markdown.extensions.jcef.mermaid.MermaidCodeFenceLanguageProvider"/>

    <browserPreviewExtensionProvider implementation="org.intellij.plugins.markdown.extensions.common.highlighter.CodeFenceCopyButtonBrowserExtension$Provider"/>

    <!--suppress PluginXmlValidity -->
    <markdownExportProvider implementation="org.intellij.plugins.markdown.fileActions.export.MarkdownDocxExportProvider"/>
    <!--suppress PluginXmlValidity -->
    <markdownExportProvider implementation="org.intellij.plugins.markdown.fileActions.export.MarkdownPdfExportProvider"/>
    <!--suppress PluginXmlValidity -->
    <markdownExportProvider implementation="org.intellij.plugins.markdown.fileActions.export.MarkdownHtmlExportProvider"/>
  </extensions>

  <actions>
    <group id="Markdown.TableActions" compact="true" class="org.intellij.plugins.markdown.editor.tables.actions.TableActionsGroup">
      <group id="Markdown.TableColumnActions" compact="true">
        <action id="Markdown.Table.SwapColumns.SwapWithLeftColumn"
                class="org.intellij.plugins.markdown.editor.tables.actions.column.SwapColumnsAction$SwapWithLeftColumn"
                icon="AllIcons.Actions.Back"/>
        <action id="Markdown.Table.SwapColumns.SwapWithRightColumn"
                class="org.intellij.plugins.markdown.editor.tables.actions.column.SwapColumnsAction$SwapWithRightColumn"
                icon="AllIcons.Actions.Forward"/>
        <separator/>
        <action id="Markdown.Table.InsertTableColumn.InsertBefore"
                class="org.intellij.plugins.markdown.editor.tables.actions.column.InsertTableColumnAction$InsertBefore"
                icon="org.intellij.plugins.markdown.MarkdownIcons.EditorActions.AddColumnLeft"/>
        <action id="Markdown.Table.InsertTableColumn.InsertAfter"
                class="org.intellij.plugins.markdown.editor.tables.actions.column.InsertTableColumnAction$InsertAfter"
                icon="org.intellij.plugins.markdown.MarkdownIcons.EditorActions.AddColumnRight"/>
        <separator/>
        <action id="Markdown.Table.SelectCurrentColumn.SelectContentCells"
                class="org.intellij.plugins.markdown.editor.tables.actions.column.SelectCurrentColumnAction$SelectContentCells"
                icon="AllIcons.Actions.InSelection"/>
        <separator/>
        <!--<action id="org.intellij.plugins.markdown.editor.tables.actions.column.SelectCurrentColumnAction.SelectWholeColumn"-->
        <!--        class="org.intellij.plugins.markdown.editor.tables.actions.column.SelectCurrentColumnAction$SelectWholeColumn"/>-->
        <group id="Markdown.Table.ColumnAlignmentActions"
               compact="true"
               class="org.intellij.plugins.markdown.editor.tables.actions.column.TableColumnAlignmentActionsGroup">
          <!--<action id="org.intellij.plugins.markdown.editor.tables.actions.column.SetColumnAlignmentAction.None"-->
          <!--        class="org.intellij.plugins.markdown.editor.tables.actions.column.SetColumnAlignmentAction$None"/>-->
          <action id="Markdown.Table.SetColumnAlignment.Left"
                  class="org.intellij.plugins.markdown.editor.tables.actions.column.SetColumnAlignmentAction$Left"
                  icon="org.intellij.plugins.markdown.MarkdownIcons.EditorActions.LeftAlign"/>
          <action id="Markdown.Table.SetColumnAlignment.Center"
                  class="org.intellij.plugins.markdown.editor.tables.actions.column.SetColumnAlignmentAction$Center"
                  icon="org.intellij.plugins.markdown.MarkdownIcons.EditorActions.CenterAlign"/>
          <action id="Markdown.Table.SetColumnAlignment.Right"
                  class="org.intellij.plugins.markdown.editor.tables.actions.column.SetColumnAlignmentAction$Right"
                  icon="org.intellij.plugins.markdown.MarkdownIcons.EditorActions.RightAlign"/>
        </group>
        <separator/>
        <action id="Markdown.Table.RemoveCurrentColumn"
                class="org.intellij.plugins.markdown.editor.tables.actions.column.RemoveCurrentColumnAction"
                icon="AllIcons.Actions.GC"/>
      </group>
      <group id="Markdown.TableRowActions" compact="true">
        <action id="Markdown.Table.SwapRows.SwapWithAbove"
                class="org.intellij.plugins.markdown.editor.tables.actions.row.SwapRowsAction$SwapWithAbove"
                icon="AllIcons.Actions.PreviousOccurence"/>
        <action id="Markdown.Table.SwapRows.SwapWithBelow"
                class="org.intellij.plugins.markdown.editor.tables.actions.row.SwapRowsAction$SwapWithBelow"
                icon="AllIcons.Actions.NextOccurence"/>
        <separator/>
        <action id="Markdown.Table.InsertRow.InsertAbove"
                class="org.intellij.plugins.markdown.editor.tables.actions.row.InsertRowAction$InsertAbove"
                icon="org.intellij.plugins.markdown.MarkdownIcons.EditorActions.AddRowAbove"/>
        <action id="Markdown.Table.InsertRow.InsertBelow"
                class="org.intellij.plugins.markdown.editor.tables.actions.row.InsertRowAction$InsertBelow"
                icon="org.intellij.plugins.markdown.MarkdownIcons.EditorActions.AddRowBelow"/>
        <separator/>
        <action id="Markdown.Table.SelectRow"
                class="org.intellij.plugins.markdown.editor.tables.actions.row.SelectRowAction"
                icon="AllIcons.Actions.InSelection"/>
        <separator/>
        <action id="Markdown.Table.RemoveCurrentRow"
                class="org.intellij.plugins.markdown.editor.tables.actions.row.RemoveCurrentRowAction"
                icon="AllIcons.Actions.GC"/>
      </group>

      <group id="Markdown.TableContextMenuGroup"
             class="com.intellij.ide.actions.NonTrivialActionGroup"
             popup="true"
             compact="true">
        <reference id="Markdown.Table.InsertTableColumn.InsertBefore"/>
        <reference id="Markdown.Table.InsertTableColumn.InsertAfter"/>
        <reference id="Markdown.Table.InsertRow.InsertAbove"/>
        <reference id="Markdown.Table.InsertRow.InsertBelow"/>
        <separator/>
        <group id="Markdown.TableColumnActions.ColumnAlignmentActions.Popup"
               class="com.intellij.ide.actions.NonTrivialActionGroup"
               popup="true"
               compact="true">
          <reference id="Markdown.Table.ColumnAlignmentActions"/>
        </group>
        <reference id="Markdown.Table.SwapColumns.SwapWithLeftColumn"/>
        <reference id="Markdown.Table.SwapColumns.SwapWithRightColumn"/>
        <separator/>
        <reference id="Markdown.Table.RemoveCurrentColumn"/>
        <reference id="Markdown.Table.RemoveCurrentRow"/>
      </group>
    </group>

    <!--Old id org.intellij.plugins.markdown.ui.actions.styling.MarkdownCreateLinkAction-->
    <action class="org.intellij.plugins.markdown.ui.actions.styling.MarkdownCreateLinkAction"
            id="Markdown.Styling.CreateLink"
            icon="org.intellij.plugins.markdown.MarkdownIcons.EditorActions.Link">
      <keyboard-shortcut first-keystroke="control shift U" keymap="$default"/>
    </action>

    <group id="Markdown.Toolbar.Floating">
      <action id="Markdown.Styling.SetHeaderLevel"
              class="org.intellij.plugins.markdown.ui.actions.styling.SetHeaderLevelAction"/>
      <separator/>
      <action class="org.intellij.plugins.markdown.ui.actions.styling.ToggleBoldAction"
              id="org.intellij.plugins.markdown.ui.actions.styling.ToggleBoldAction"
              icon="org.intellij.plugins.markdown.MarkdownIcons.EditorActions.Bold">
        <keyboard-shortcut first-keystroke="control B" keymap="$default"/>
      </action>
      <action class="org.intellij.plugins.markdown.ui.actions.styling.ToggleItalicAction"
              id="org.intellij.plugins.markdown.ui.actions.styling.ToggleItalicAction"
              icon="org.intellij.plugins.markdown.MarkdownIcons.EditorActions.Italic">
        <keyboard-shortcut first-keystroke="control I" keymap="$default"/>
      </action>
      <action class="org.intellij.plugins.markdown.ui.actions.styling.ToggleStrikethroughAction"
              id="org.intellij.plugins.markdown.ui.actions.styling.ToggleStrikethroughAction"
              icon="org.intellij.plugins.markdown.MarkdownIcons.EditorActions.Strike_through">
        <keyboard-shortcut first-keystroke="control shift S" keymap="$default"/>
      </action>
      <action class="org.intellij.plugins.markdown.ui.actions.styling.ToggleCodeSpanAction"
              id="org.intellij.plugins.markdown.ui.actions.styling.ToggleCodeSpanAction"
              icon="org.intellij.plugins.markdown.MarkdownIcons.EditorActions.Code_span">
        <keyboard-shortcut first-keystroke="control shift C" keymap="$default"/>
      </action>
      <reference id="Markdown.Styling.CreateLink"/>
      <separator/>
      <action class="org.intellij.plugins.markdown.ui.actions.styling.CreateOrChangeListPopupAction"
              id="Markdown.Styling.CreateOrChangeList"
              icon="org.intellij.plugins.markdown.MarkdownIcons.EditorActions.BulletList"/>
    </group>


    <action class="org.intellij.plugins.markdown.ui.actions.styling.HeaderDownAction"
            id="org.intellij.plugins.markdown.ui.actions.styling.HeaderDownAction"
            icon="org.intellij.plugins.markdown.MarkdownIcons.EditorActions.Header_level_down"/>
    <action class="org.intellij.plugins.markdown.ui.actions.styling.HeaderUpAction"
            id="org.intellij.plugins.markdown.ui.actions.styling.HeaderUpAction"
            icon="org.intellij.plugins.markdown.MarkdownIcons.EditorActions.Header_level_up"/>

    <!--
      This group is supposed to override default generate popup.
      Please, make sure to adjust action text for MarkdownActionPlaces.INSERT_POPUP.
    -->
    <group id="Markdown.InsertGroup">
      <!-- Also add all insert actions into default generate popup -->
      <add-to-group group-id="GenerateGroup" anchor="last"/>
      <reference id="Markdown.Styling.CreateLink"/>
      <action id="Markdown.InsertEmptyTable"
              class="org.intellij.plugins.markdown.editor.tables.actions.InsertEmptyTableAction"
              icon="org.intellij.plugins.markdown.MarkdownIcons.EditorActions.Table"/>
      <!--<action class="org.intellij.plugins.markdown.ui.actions.styling.InsertImageAction"-->
      <!--        id="org.intellij.plugins.markdown.ui.actions.styling.InsertImageAction"-->
      <!--        icon="AllIcons.General.LayoutPreviewOnly">-->
      <!--  <keyboard-shortcut first-keystroke="control U" keymap="$default"/>-->
      <!--</action>-->
      <action id="Markdown.GenerateTableOfContents"
              class="org.intellij.plugins.markdown.editor.toc.GenerateTableOfContentsAction"
              icon="org.intellij.plugins.markdown.MarkdownIcons.EditorActions.BulletList"/>
    </group>
    <action id="Markdown.Insert"
            class="org.intellij.plugins.markdown.ui.actions.InsertAction"
            use-shortcut-of="Generate"/>

    <action class="org.intellij.plugins.markdown.ui.actions.styling.MarkdownIntroduceLinkReferenceAction"
            id="org.intellij.plugins.markdown.ui.actions.styling.MarkdownIntroduceLinkReferenceAction"
            icon="org.intellij.plugins.markdown.MarkdownIcons.EditorActions.Link">
    </action>

    <group id="Markdown.EditorContextMenuGroup">
      <add-to-group group-id="EditorPopupMenu" anchor="after" relative-to-action="EditorToggleColumnMode"/>
      <separator/>
      <reference id="Markdown.TableContextMenuGroup"/>
      <reference id="Markdown.Insert"/>
    </group>

    <group id="Markdown.Toolbar.Left" class="com.intellij.openapi.actionSystem.DefaultActionGroup">
    </group>

    <group id="Markdown.Toolbar.Right" class="com.intellij.openapi.actionSystem.DefaultActionGroup">
      <action class="org.intellij.plugins.markdown.ui.actions.scrolling.AutoScrollAction"
              id="org.intellij.plugins.markdown.ui.actions.scrolling.AutoScrollAction"
              icon="AllIcons.Actions.SynchronizeScrolling">
      </action>
    </group>

    <group id="Markdown.Tools" popup="true">
      <add-to-group group-id="ToolsMenu" anchor="before" relative-to-action="ExternalToolsGroup"/>
      <action id="Markdown.ImportFromDocx"
              class="org.intellij.plugins.markdown.fileActions.importFrom.docx.MarkdownImportFromDocxAction"/>
      <action id="Markdown.Export"
              class="org.intellij.plugins.markdown.fileActions.export.MarkdownExportAction"/>
      <action id="Markdown.ConfigurePandoc"
              class="org.intellij.plugins.markdown.ui.actions.ConfigurePandocAction"/>
    </group>
    <action id="Markdown.OpenDevtools"
            class="org.intellij.plugins.markdown.ui.actions.MarkdownOpenDevtoolsAction"/>
    <action id="Markdown.Extensions.CleanupExternalFiles"
            class="org.intellij.plugins.markdown.extensions.CleanupExtensionsExternalFilesAction"
            icon="AllIcons.Actions.GC"/>

    <group id="Markdown.Preview.FontSize" popup="true" compact="true">
      <action id="Markdown.Preview.IncreaseFontSize"
              class="org.intellij.plugins.markdown.ui.actions.ChangeFontSizeAction$Increase"/>
      <action id="Markdown.Preview.DecreaseFontSize"
              class="org.intellij.plugins.markdown.ui.actions.ChangeFontSizeAction$Decrease"/>
      <action id="Markdown.Preview.ResetFontSize"
              class="org.intellij.plugins.markdown.ui.actions.ChangeFontSizeAction$Reset"/>
    </group>
  </actions>
</idea-plugin>
 lib/markdown.jar  microservices-ui  <idea-plugin package="com.intellij.microservices.ui">
  <id>com.intellij.microservices.ui</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>Endpoints</name>
  <vendor>JetBrains</vendor>
  <category>Microservices</category>

  <description><![CDATA[
    Provides Endpoints tool window - an aggregated view of both client and server APIs used in your project for HTTP and
    WebSocket protocols. It can assist you when developing microservices and backend-frontend communication.
  ]]></description>

  <content>
    <module name="intellij.microservices.ui/diagram"/>
  </content>

  <dependencies>
    <plugin id="com.intellij.modules.microservices"/>
    <plugin id="com.intellij.modules.ultimate"/>
  </dependencies>

  <resource-bundle>messages.MicroservicesUiBundle</resource-bundle>

  <extensions defaultExtensionNs="com.intellij">
    <microservices.urlInlayAction implementation="com.intellij.microservices.ui.url.ShowModuleEndpointsUrlInlayAction" order="last"/>
    <iconMapper mappingFile="MicroservicesUiIconMappings.json"/>

    <toolWindow id="Endpoints"
                anchor="right"
                icon="com.intellij.microservices.ui.MicroservicesUIIcons.ToolWindowEndpoints"
                factoryClass="com.intellij.microservices.ui.flat.EndpointsToolWindowFactory"/>
  </extensions>

  <actions>
    <group id="EndpointsActions.ContextMenu"/>

    <group id="EndpointsActions.FilterToolbar">
      <group id="EndpointsActions.OptionsMenu" icon="AllIcons.Actions.GroupBy" popup="true">
        <separator key="group.EndpointsActions.LayoutOptions.separator"/>
        <action id="EndpointsCompactListItems" class="com.intellij.microservices.ui.flat.CompactListItemsAction">
          <override-text place="GoToAction"/>
        </action>
        <action id="EndpointsShowModules" class="com.intellij.microservices.ui.flat.ShowModulesAction">
          <override-text place="GoToAction"/>
        </action>
        <separator/>
        <separator key="group.EndpointsActions.FilterOptions.separator"/>
        <action id="EndpointsShowFromLibraries" class="com.intellij.microservices.ui.flat.ShowFromLibrariesAction">
          <override-text place="GoToAction"/>
        </action>
        <action id="EndpointsShowFromTests" class="com.intellij.microservices.ui.flat.ShowFromTestsAction">
          <override-text place="GoToAction"/>
        </action>
      </group>
    </group>

    <group id="EndpointsActions.Title">
      <action id="EndpointsShowSidePanel"
              class="com.intellij.microservices.ui.flat.ShowSidePanelAction"
              icon="AllIcons.Actions.PreviewDetailsVertically">
        <override-text place="GoToAction"/>
      </action>
    </group>
  </actions>

  <projectListeners>
    <listener class="com.intellij.microservices.ui.flat.EndpointsViewOpenerTrigger"
              topic="com.intellij.microservices.endpoints.EndpointsViewOpener"/>
  </projectListeners>
</idea-plugin> lib/microservices-ui.jar  packageChecker  `<idea-plugin package="com.intellij.packageChecker">
  <id>org.jetbrains.security.package-checker</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>Package Checker</name>
  <vendor>JetBrains</vendor>

  <description><![CDATA[
    <p>Checks Gradle, Maven, NPM and PyPI dependencies for known vulnerabilities.</p>
    <ul>
      <li>Checks against the <a href="https://checkmarx.com/">Checkmarx CxSCA Database</a> and the <a href="https://nvd.nist.gov/">National Vulnerability Database</a>.</li>
      <li>Provides several inspections and a dedicated tool window.</li>
      <li>Suggests a safe version of the package if available.</li>
      <li>Package Checker doesn't send information about packages to the JetBrains server in cleartext form. It sends only hashed names of packages. We never log or process hashes we don't have in our database. Thus we don't analyze your proprietary or confidential packages.</li>
    </ul>
    <p>Run the <b>Show Vulnerable Dependencies</b> action to open the tool window with a per-module report.</p>
    <p>© 2022 - Checkmarx and its Licensors for the vulnerability data, JetBrains s.r.o. for the plugin source code</p>
    <p>Attributions:</p>
    <p>Results powered by Checkmarx ©</p>
    <p>Some results may also be powered by NVD NIST</p>
  ]]></description>

  <content>
    <module name="intellij.packageChecker.go"/>
    <module name="intellij.packageChecker.java"/>
    <module name="intellij.packageChecker.maven"/>
    <module name="intellij.packageChecker.gradle"/>
    <module name="intellij.packageChecker.javascript"/>
    <module name="intellij.packageChecker.python"/>
    <module name="intellij.packageChecker.php"/>
  </content>

  <resource-bundle>messages.PackageCheckerBundle</resource-bundle>

  <extensionPoints>
    <extensionPoint interface="com.intellij.packageChecker.api.BuildFileProvider" dynamic="true" area="IDEA_PROJECT"
                    qualifiedName="com.intellij.packageChecker.buildFileProvider"/>
    <extensionPoint interface="com.intellij.packageChecker.model.ProjectDependenciesModel" dynamic="true" area="IDEA_PROJECT"
                    qualifiedName="com.intellij.packageChecker.dependencyModel"/>
  </extensionPoints>

  <extensions defaultExtensionNs="com.intellij">
    <!-- Add your extensions here -->
    <notificationGroup displayType="BALLOON" id="Security" bundle="messages.PackageCheckerBundle" key="notification.group.security"/>
    <statistics.counterUsagesCollector implementationClass="com.intellij.packageChecker.fus.PackageCheckerUsageStat"/>
    <registryKey defaultValue="false" description="Add action to find usages of dependency in toolwindow"
                 key="jetbrains.security.package-checker.findUsages"
                 id="jetbrains.security.package-checker.findUsages"
                 restartRequired="false"/>
    <!--suppress PluginXmlCapitalization -->
    <registryKey defaultValue="false"
                 description="Require JetBrains Account"
                 key="jetbrains.security.package-checker.useJba" id="jetbrains.security.package-checker.useJba"
                 restartRequired="false"/>
    <registryKey defaultValue="true"
                 description="Use checkmarx repository"
                 key="jetbrains.security.package-checker.cx" id="jetbrains.security.package-checker.cx"
                 restartRequired="false"/>
    <registryKey defaultValue="true"
                 description="Add action to report false-positive vulnerabilities"
                 key="jetbrains.security.package-checker.reportFalsePositive"
                 id="jetbrains.security.package-checker.reportFalsePositive"
                 restartRequired="true"/>
    <registryKey defaultValue="https://vulnerability-search.europe-north1-gke.intellij.net"
                 description="Data server URL"
                 key="jetbrains.security.package-checker.dbUrl"
                 id="jetbrains.security.package-checker.dbUrl"
                 restartRequired="true"/>
    <registryKey defaultValue="10"
                 description="Synchronization timeout (in minutes) for headless mode"
                 key="jetbrains.security.package-checker.synchronizationTimeout"
                 id="jetbrains.security.package-checker.synchronizationTimeout"
                 restartRequired="true"/>
    <registryKey defaultValue="/api/v4/vulnerabilities/cx"
                 description="API path for retrieving information about vulnerabilities"
                 key="jetbrains.security.package-checker.apiVulnerablePath"
                 id="jetbrains.security.package-checker.apiVulnerablePath"
                 restartRequired="true"/>

    <localInspection implementationClass="com.intellij.packageChecker.inspection.VulnerableLibrariesLocalInspection"
                     groupKey="inspection.group"
                     key="inspection.local.name"
                     id="com.intellij.packageChecker.inspection.VulnerableLibrariesLocalInspection"
                     enabledByDefault="true"
                     level="WARNING"/>

    <moduleService serviceImplementation="com.intellij.packageChecker.service.VulnerableApiService"
                   id="com.intellij.packageChecker.service.VulnerableApiService"/>

    <problemsViewPanelProvider implementation="com.intellij.packageChecker.toolwindow.tree.panel.VulnerableDependenciesViewPanelProvider"/>

    <codeInsight.linkHandler prefix="#package_checker/"
                             handlerClass="com.intellij.packageChecker.toolwindow.preview.PackageCheckerLinkHandler"/>
  </extensions>

  <actions>
    <group id="PackageChecker.Toolwindow.Tree.Popup" popup="true" searchable="false">
      <action id="PCNavigateToSource"
              class="com.intellij.packageChecker.actions.NavigateToSource"
              icon="AllIcons.Actions.EditSource"
              use-shortcut-of="EditSource"/>
    </group>

    <group id="PackageChecker.ProblemTab.ToolBar">
      <action class="com.intellij.packageChecker.toolwindow.tree.actions.RefreshAction"
              id="PCRefreshAction"
              icon="AllIcons.Actions.Refresh"/>
      <reference ref="ExpandAll"/>
      <reference ref="CollapseAll"/>
    </group>

    <group id="PackageChecker.ProblemTab.ToolBar.ShowSafe" popup="true" icon="AllIcons.Actions.Show">
      <action class="com.intellij.packageChecker.toolwindow.tree.actions.OnlyVulnerableToggleAction"
              id="PCOnlyVulnerableToggleAction"/>
      <add-to-group group-id="PackageChecker.ProblemTab.ToolBar"
                    anchor="after"
                    relative-to-action="PCRefreshAction"/>
    </group>

    <group id="PackageChecker.AnalyzeActions">
      <separator/>
      <action id="PCAnalyzeVulnerableDependencies"
              class="com.intellij.packageChecker.actions.AnalyzeVulnerableDependencies">
      </action>
      <add-to-group group-id="AnalyzeActions"/>
    </group>

  </actions>
</idea-plugin> lib/packageChecker.jar  performanceTesting  <idea-plugin package="com.jetbrains.performancePlugin">
  <id>com.jetbrains.performancePlugin</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>Performance Testing</name>
  <vendor>JetBrains</vendor>
  <category>Other Tools</category>
  <resource-bundle>messages.PerformanceTestingBundle</resource-bundle>

  <description><![CDATA[
      Plugin for automated execution of test scripts, capturing performance snapshots
      and gathering performance statistics.
      ]]></description>

  <content>
    <module name="intellij.performanceTesting.remoteDriver"/>
  </content>

  <dependencies>
    <plugin id="com.intellij.modules.lang"/>
  </dependencies>

  <actions>
    <group id="StartProfileGroup">
      <add-to-group group-id="HelpDiagnosticTools" anchor="last"/>
    </group>
    <group id="IndexingDiagnosticGroup">
      <action class="com.jetbrains.performancePlugin.actions.OpenIndexingDiagnosticsAction" id="performancePlugin.OpenIndexingDiagnosticsAction"/>
      <add-to-group group-id="HelpDiagnosticTools" anchor="after" relative-to-action="CollectTroubleshootingInformation"/>
    </group>
    <group id="DiagnosticGroup">
      <separator/>
      <action id="CaptureMemorySnapShot" class="com.jetbrains.performancePlugin.actions.CaptureMemorySnapshotAction" icon="AllIcons.Actions.ProfileMemory"/>
      <action class="com.jetbrains.performancePlugin.actions.ExecuteScriptAction" id="performancePlugin.ExecuteScriptAction"/>
      <separator/>
      <add-to-group group-id="HelpDiagnosticTools" anchor="last"/>
    </group>
  </actions>

  <extensionPoints>
    <extensionPoint interface="com.jetbrains.performancePlugin.CommandProvider" name="commandProvider" dynamic="true"/>
    <extensionPoint interface="com.jetbrains.performancePlugin.RunCallbackHandler" name="runCallbackHandler"/>
    <extensionPoint interface="com.jetbrains.performancePlugin.profilers.SnapshotOpener" name="snapshotOpener" dynamic="true"/>
    <extensionPoint interface="com.jetbrains.performancePlugin.profilers.Profiler" name="profiler" dynamic="true"/>
  </extensionPoints>

  <extensions defaultExtensionNs="com.intellij">
    <troubleInfoCollector implementation="com.jetbrains.performancePlugin.PerformanceTroubleInfoCollector"/>
    <troubleInfoCollector implementation="com.jetbrains.performancePlugin.utils.HardwareCollector"/>

    <fileType name="IntegrationPerformanceTest"
              implementationClass="com.jetbrains.performancePlugin.lang.IJPerfFileType"
              fieldName="INSTANCE" language="IntegrationPerformanceTest" extensions="ijperf"/>

    <lang.parserDefinition language="IntegrationPerformanceTest"
                           implementationClass="com.jetbrains.performancePlugin.lang.IJPerfParserDefinition"/>

    <lang.syntaxHighlighterFactory language="IntegrationPerformanceTest"
                                   implementationClass="com.jetbrains.performancePlugin.lang.IJPerfSyntaxHighlighterFactory"/>

    <completion.contributor language="IntegrationPerformanceTest"
                            implementationClass="com.jetbrains.performancePlugin.lang.completion.IJPerfCompletionContributor"/>

    <annotator language="IntegrationPerformanceTest" implementationClass="com.jetbrains.performancePlugin.lang.inspections.IJPerfStartStopProfileInspection"/>

    <documentationProvider implementation="com.jetbrains.performancePlugin.lang.doc.IJPerfDocumentationProvider"/>

    <initProjectActivity implementation="com.jetbrains.performancePlugin.PerformancePluginInitProjectActivity"/>
    <postStartupActivity implementation="com.jetbrains.performancePlugin.PerformanceTestTotalTimeTimer" />
    <applicationInitializedListener implementation="com.jetbrains.performancePlugin.ProjectLoaded"/>

    <notificationGroup id="PerformancePlugin" displayType="BALLOON" bundle="messages.PerformanceTestingBundle" key="notification.group.performance.plugin"/>
    <registryKey key="performance.plugin.playback.runner.useDirectActionCall" description="Setup PlaybackRunner to use direct action calls over key strokes for actions in Playback framework" defaultValue="false" restartRequired="false"/>

    <projectService overrides="true"
                    serviceInterface="com.intellij.internal.performanceTests.ProjectInitializationDiagnosticService"
                    serviceImplementation="com.jetbrains.performancePlugin.ProjectInitializationDiagnosticServiceImpl"/>
  </extensions>

  <applicationListeners>
    <listener class="com.jetbrains.performancePlugin.ProjectLoaded$MyAppLifecycleListener" topic="com.intellij.ide.AppLifecycleListener"/>
  </applicationListeners>
  <projectListeners>
    <listener class="com.jetbrains.performancePlugin.ProjectIndexingComponent"
              topic="com.intellij.openapi.project.DumbService$DumbModeListener"/>

    <listener class="com.jetbrains.performancePlugin.commands.WaitForFinishedCodeAnalysisListener"
              topic="com.intellij.codeInsight.daemon.DaemonCodeAnalyzer$DaemonListener"/>
  </projectListeners>

  <extensions defaultExtensionNs="com.jetbrains.performancePlugin">
    <commandProvider implementation="com.jetbrains.performancePlugin.BaseCommandProvider"/>
    <runCallbackHandler implementation="com.jetbrains.performancePlugin.BaseRunCallbackHandler"/>
  </extensions>
</idea-plugin> lib/performanceTesting.jar  performanceTesting-async  R<idea-plugin package="com.jetbrains.performancePlugin.profilers.async" implementation-detail="true">
  <id>com.jetbrains.performancePlugin.async</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>Async Profiler for IDE Performance Testing</name>
  <vendor>JetBrains</vendor>
  <category>Other Tools</category>

  <description><![CDATA[
      Plugin provides Async profiler for IDE Performance Testing.
      ]]></description>

  <content>
    <module name="intellij.performanceTesting.async.core"/>
  </content>
</idea-plugin>  lib/performanceTesting-async.jar  platform-ide-provisioner  <idea-plugin package="com.intellij.platform.ide.provisioner" implementation-detail="true">
  <id>com.intellij.platform.ide.provisioner</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>IDE Services / Provisioner API</name>
  <vendor>JetBrains</vendor>
  <description>Provides API for accessing service configuration provisioned by JetBrains IDE Services.</description>

  <extensions defaultExtensionNs="com.intellij">
    <applicationService serviceInterface="com.intellij.platform.ide.provisioner.ProvisionedServiceRegistry"
                        serviceImplementation="com.intellij.platform.ide.provisioner.DefaultProvisionedServiceRegistry"/>
  </extensions>

</idea-plugin>
  lib/platform-ide-provisioner.jar  platform-ijent-impl  <idea-plugin package="com.intellij.platform.ijent.impl">
  <id>intellij.platform.ijent.impl</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>Remote Execution Agent</name>
  <category>Deployment</category>
  <description>An experimental remote-side application for launching processes and making tunnels to WSL, SSH, Docker, etc.</description>
  <vendor>JetBrains</vendor>

  <extensions defaultExtensionNs="com.intellij">
    <applicationService
      serviceInterface="com.intellij.platform.ijent.IjentSessionProvider"
      serviceImplementation="com.intellij.platform.ijent.impl.GrpcIjentSessionProvider"
      overrides="true"/>

    <applicationService
      serviceInterface="com.intellij.platform.ijent.IjentExecFileProvider"
      serviceImplementation="com.intellij.platform.ijent.impl.ProductionIjentExecFileProvider"
      testServiceImplementation="com.intellij.platform.ijent.impl.TestIjentExecFileProvider"
      overrides="true"/>

    <applicationService serviceInterface="com.intellij.execution.wsl.WslIjentAvailabilityService"
                        serviceImplementation="com.intellij.platform.ijent.impl.wsl.ProductionWslIjentAvailabilityService"
                        overrides="true"/>
    <registryKey
      description="Using the experimental remote agent inside WSL to launch processes."
      key="wsl.use.remote.agent.for.launch.processes"
      os="windows"
      restartRequired="false"
      defaultValue="true"/>
  </extensions>

  <actions resource-bundle="messages.IjentBundle">
    <action
      id="com.intellij.platform.ijent.impl.IjentLocalVerificationAction"
      class="com.intellij.platform.ijent.impl.IjentLocalVerificationAction"
      text="Test IJent + Local Machine"
      internal="true"/>
    <action
      id="com.intellij.platform.ijent.impl.IjentWslVerificationAction"
      class="com.intellij.platform.ijent.impl.IjentWslVerificationAction"
      text="Test IJent + WSL"
      internal="true"/>
    <action
      id="com.intellij.platform.ijent.impl.IjentDockerVerificationAction"
      class="com.intellij.platform.ijent.impl.IjentDockerVerificationAction"
      text="Test IJent + Docker"
      internal="true"/>
  </actions>
</idea-plugin> lib/platform-ijent-impl.jar  platform-images  *<idea-plugin implementation-detail="true" package="org.intellij.images">
  <vendor>JetBrains</vendor>
  <name>Images</name>
  <id>com.intellij.platform.images</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <description>Adds support for image file type preview, SVG file type contents language</description>

  <extensionPoints>
    <extensionPoint qualifiedName="com.intellij.images.themeFilter" interface="org.intellij.images.thumbnail.actions.ThemeFilter" dynamic="true"/>
  </extensionPoints>

  <resource-bundle>messages.ImagesBundle</resource-bundle>

  <dependencies>
    <plugin id="com.intellij.modules.lang"/>
    <plugin id="com.intellij.modules.xml"/>
  </dependencies>

  <extensions defaultExtensionNs="com.intellij">
    <fileEditorProvider implementation="org.intellij.images.editor.impl.ImageFileEditorProvider"/>
    <colorSettingsPage implementation="org.intellij.images.options.impl.ImageEditorColorSchemeSettings"/>
    <selectInTarget implementation="org.intellij.images.thumbnail.impl.ThumbnailSelectInTarget"/>

    <applicationService serviceInterface="org.intellij.images.fileTypes.ImageFileTypeManager"
                        serviceImplementation="org.intellij.images.fileTypes.impl.ImageFileTypeManagerImpl"/>
    <applicationService serviceInterface="org.intellij.images.options.OptionsManager"
                        serviceImplementation="org.intellij.images.options.impl.OptionsManagerImpl"/>
    <projectService serviceInterface="org.intellij.images.thumbnail.ThumbnailManager"
                    serviceImplementation="org.intellij.images.thumbnail.impl.ThumbnailManagerImpl"/>
    <!-- ImageIO.getReaderFormatNames() -->
    <fileType name="Image" implementationClass="org.intellij.images.fileTypes.impl.ImageFileType" fieldName="INSTANCE" extensions="bigtiff;bmp;dcx;gif;icns;ico;jbig2;jpeg;jpg;pam;pbm;pcx;pgm;png;pnm;ppm;psd;rgbe;tga;tif;tiff;wbmp;xbm;xpm" />
    <fileType name="SVG" implementationClass="org.intellij.images.fileTypes.impl.SvgFileType" fieldName="INSTANCE" extensions="svg" language="SVG"/>
    <lang.parserDefinition language="SVG" implementationClass="org.intellij.images.fileTypes.impl.SvgParserDefinition"/>
    <fileLookupInfoProvider implementation="org.intellij.images.completion.ImageLookupInfoProvider"/>
    <documentationProvider implementation="org.intellij.images.fileTypes.ImageDocumentationProvider"/>

    <filePasteProvider implementation="org.intellij.images.ide.ImagePasteProvider" order="last"/>

    <projectService serviceImplementation="org.intellij.images.search.ImageTagManager"/>
    <registryKey key="ide.images.wheel.zooming" defaultValue="true" description="Enable zoom in/out by mouse wheel"/>
    <registryKey key="ide.images.show.chessboard" defaultValue="false" description="Enable chessboard"/>
    <registryKey key="ide.images.chessboard.cell.size" defaultValue="5" description="Option for default chessboard cell size"/>
    <registryKey key="ide.images.show.grid" defaultValue="false" description="Show grid by default"/>
    <registryKey key="ide.images.show.grid.only.when.zoom.factor.equal.or.more.than" defaultValue="3" description="Hide grid if zoom factor is less than value"/>
    <registryKey key="ide.images.show.grid.after.every.x.pixels" defaultValue="1" description="Pixels between grid lines"/>
    <registryKey key="ide.images.change.background.action.enabled" defaultValue="false" description="Show action for changing background in the editor toolbar"/>
    <iconMapper mappingFile="ImagesIconMappings.json"/>
  </extensions>

  <actions>
    <group id="ImagesRootGroup">
      <action class="org.intellij.images.actions.EditExternallyAction"
              id="Images.EditExternally">
        <keyboard-shortcut first-keystroke="control alt F4" keymap="$default"/>
        <add-to-group anchor="after" group-id="ProjectViewPopupMenu" relative-to-action="EditSource"/>
      </action>
      <action class="org.intellij.images.actions.EditExternalImageEditorAction"
              id="Images.EditExternalEditorPath">
      </action>
      <action class="org.intellij.images.actions.ConvertSvgToPngAction"
              id="Images.ConvertSvgToPng">
        <add-to-group anchor="after" group-id="ProjectViewPopupMenu" relative-to-action="EditSource"/>
      </action>
      <action class="org.intellij.images.actions.ShowThumbnailsAction"
              id="Images.ShowThumbnails">
      </action>

      <group id="Images.ImageViewActions">
        <action class="org.intellij.images.actions.ToggleTransparencyChessboardAction"
                id="Images.ToggleTransparencyChessboard"
                icon="org.intellij.images.ImagesIcons.ToggleTransparencyChessboard">
        </action>
        <action class="org.intellij.images.editor.actions.SetBackgroundImageAction"
                id="Images.SetBackgroundImage">
          <add-to-group group-id="ProjectViewPopupMenu"/>
          <add-to-group group-id="EditorPopupMenu3"/>
        </action>
        <action class="org.intellij.images.editor.actions.ToggleGridAction"
                id="Images.Editor.ToggleGrid"
                icon="AllIcons.Graph.Grid">
          <keyboard-shortcut first-keystroke="control QUOTE" keymap="$default"/>
        </action>
        <action class="org.intellij.images.editor.actions.ZoomInAction"
                id="Images.Editor.ZoomIn"
                icon="AllIcons.Graph.ZoomIn"
                use-shortcut-of="ExpandAll"/>
        <action class="org.intellij.images.editor.actions.ZoomOutAction"
                id="Images.Editor.ZoomOut"
                icon="AllIcons.Graph.ZoomOut"
                use-shortcut-of="CollapseAll"/>
        <action class="org.intellij.images.editor.actions.ActualSizeAction"
                id="Images.Editor.ActualSize"
                icon="AllIcons.Graph.ActualZoom">
          <keyboard-shortcut first-keystroke="control DIVIDE" keymap="$default"/>
          <keyboard-shortcut first-keystroke="control SLASH" keymap="$default"/>
        </action>
        <action class="org.intellij.images.editor.actions.FitZoomToWindowAction"
                id="Images.Editor.FitZoomToWindow"
                icon="AllIcons.General.FitContent"/>
      </group>
      <separator/>

      <group id="Images.ThumbnailViewActions">
        <action class="org.intellij.images.thumbnail.actions.UpFolderAction"
                id="Images.Thumbnails.UpFolder"
                icon="AllIcons.Nodes.UpFolder">
          <keyboard-shortcut first-keystroke="BACK_SPACE" keymap="$default"/>
        </action>
        <action class="org.intellij.images.thumbnail.actions.ToggleRecursiveAction"
                id="Images.Thumbnails.ToggleRecursive"
                icon="AllIcons.ObjectBrowser.FlattenPackages">
          <keyboard-shortcut first-keystroke="alt MULTIPLY" keymap="$default"/>
        </action>
        <action class="org.intellij.images.thumbnail.actions.ToggleFileSizeAction"
                id="Images.Thumbnails.ToggleFileSize"
                icon="AllIcons.FileTypes.Any_type">
        </action>
        <action class="org.intellij.images.thumbnail.actions.ToggleFileNameAction"
                id="Images.Thumbnails.ToggleFileName"
                icon="AllIcons.Actions.ShowImportStatements">
        </action>
        <action class="org.intellij.images.thumbnail.actions.FilterByThemeComboBoxAction"
                internal="true"
                id="Images.Thumbnails.FilterByTheme"/>
        <group class="org.intellij.images.thumbnail.actions.FilterByTagActionGroup"
               internal="true"
               popup="true"
               id="Images.Thumbnails.FilterByTag"/>
        <action class="org.intellij.images.thumbnail.actions.ToggleTagsPanelAction"
                id="Images.Thumbnails.ToggleTagsPanelName"
                icon="AllIcons.Actions.Preview">
        </action>

        <action class="org.intellij.images.thumbnail.actions.HideThumbnailsAction"
                id="Images.Thumbnails.Hide"
                icon="AllIcons.Actions.Cancel" use-shortcut-of="CloseContent"/>

        <action class="org.intellij.images.thumbnail.actions.EnterAction"
                id="Images.Thumbnails.EnterAction">
          <keyboard-shortcut first-keystroke="ENTER" keymap="$default"/>
        </action>

        <action class="org.intellij.images.thumbnail.actions.ShowBorderAction" id="Images.ShowBorder"/>
        <action class="org.intellij.images.editor.actions.ChangeBackgroundAction" id="Images.ChangeBackground"/>
      </group>

      <add-to-group group-id="Other.KeymapGroup"/>
    </group>
    <group id="Images.EditorToolbar">
      <reference id="Images.ToggleTransparencyChessboard"/>
      <reference id="Images.Editor.ToggleGrid"/>
      <separator/>
      <reference id="Images.Editor.ZoomIn"/>
      <reference id="Images.Editor.ZoomOut"/>
      <reference id="Images.Editor.ActualSize"/>
      <reference id="Images.Editor.FitZoomToWindow"/>
      <reference id="ShowColorPicker"/>
      <reference id="Images.ChangeBackground"/>
      <separator/>
      <reference id="TextEditorWithPreview.SplitGroup"/>
    </group>
    <group id="Images.EditorPopupMenu">
      <reference id="CutCopyPasteGroup"/>
      <separator/>
      <reference id="FindUsages"/>
      <reference id="RefactoringMenu"/>
      <separator/>
      <reference id="Images.EditorToolbar"/>
      <reference id="Images.ShowBorder"/>
      <separator/>
      <reference id="Images.SetBackgroundImage"/>
      <separator/>
      <reference id="VersionControlsGroup"/>
      <separator/>
      <reference id="Images.EditExternally"/>
      <reference id="Images.EditExternalEditorPath"/>
      <reference id="ExternalToolsGroup"/>
    </group>
    <group id="Images.ThumbnailsToolbar">
      <reference id="Images.Thumbnails.UpFolder"/>
      <reference id="Images.Thumbnails.ToggleRecursive"/>
      <separator/>
      <reference id="Images.ToggleTransparencyChessboard"/>
      <reference id="Images.Thumbnails.ToggleFileSize"/>
      <reference id="Images.Thumbnails.ToggleFileName"/>
      <separator/>

      <reference id="Images.Thumbnails.FilterByTheme"/>
      <reference id="Images.Thumbnails.FilterByTag"/>
      <reference id="Images.Thumbnails.ToggleTagsPanelName"/>
      <reference id="Images.Thumbnails.Hide"/>
    </group>
    <group id="Images.ThumbnailsPopupMenu">
      <reference id="CutCopyPasteGroup"/>
      <reference id="EditSource"/>
      <reference id="Images.Thumbnails.EnterAction"/>
      <separator/>
      <reference id="Images.ThumbnailsToolbar"/>
      <separator/>
      <reference id="FindUsages"/>
      <reference id="RefactoringMenu"/>
      <separator/>
      <reference id="$Delete"/>
      <separator/>
      <reference id="VersionControlsGroup"/>
      <reference id="CompareTwoFiles"/>
      <separator/>
      <reference id="Images.EditExternally"/>
      <reference id="ExternalToolsGroup"/>
    </group>
  </actions>
</idea-plugin>
 lib/platform-images.jar  platform-langInjection  <idea-plugin>
  <name>IntelliLang</name>
  <id>org.intellij.intelliLang</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <category>Other Tools</category>
  <vendor>JetBrains</vendor>
  <description>
      <![CDATA[
      Enables user configurable language injection support (originally developed by Sascha Weinreuter sascha.weinreuter@cit.de)
        The following features are available:
        <ul>
        <li>Language injection</li>
        <li>Pattern validation</li>
        <li>Regular expression support</li>
        <li>Language Injections page in the Settings/Preferences dialog.</li>
        <li>Ability to edit injected code in the special scratch-pad editor.</l>
        </ul>
      ]]>
   </description>

  <depends optional="true" config-file="intellilang-xpath-support.xml">XPathView</depends>
  <depends optional="true" config-file="intellilang-java-support.xml">com.intellij.modules.java</depends>
  <depends optional="true" config-file="intellilang-xml-support.xml">com.intellij.modules.xml</depends>

  <extensionPoints>
    <extensionPoint name="languageSupport" interface="org.intellij.plugins.intelliLang.inject.LanguageInjectionSupport" dynamic="true"/>
    <extensionPoint name="injectionConfig" beanClass="org.intellij.plugins.intelliLang.inject.LanguageInjectionConfigBean" dynamic="true"/>
  </extensionPoints>

  <extensions defaultExtensionNs="com.intellij">
    <intentionAction>
      <className>org.intellij.plugins.intelliLang.inject.InjectLanguageAction</className>
      <bundleName>messages.LangBundle</bundleName>
      <categoryKey>intention.category.language.injection</categoryKey>
    </intentionAction>
    <intentionAction>
      <className>org.intellij.plugins.intelliLang.inject.UnInjectLanguageAction</className>
      <bundleName>messages.LangBundle</bundleName>
      <categoryKey>intention.category.language.injection</categoryKey>
    </intentionAction>
    <intentionAction>
      <className>org.intellij.plugins.intelliLang.inject.EditInjectionSettingsAction</className>
      <bundleName>messages.LangBundle</bundleName>
      <categoryKey>intention.category.language.injection</categoryKey>
    </intentionAction>

    <highlightErrorFilter implementation="org.intellij.plugins.intelliLang.inject.FrankensteinErrorFilter"/>
    <daemon.highlightInfoFilter implementation="org.intellij.plugins.intelliLang.inject.FrankensteinErrorFilter"/>

    <projectConfigurable groupId="editor" bundle="messages.IntelliLangBundle" key="configurable.InjectionsSettingsUI.display.name"
                         dynamic="true" id="IntelliLang.Configuration" instance="org.intellij.plugins.intelliLang.InjectionsSettingsUI"
                         nonDefaultProject="true"/>

    <applicationService serviceInterface="com.intellij.psi.impl.source.tree.injected.FallbackInjectionPerformer"
                        serviceImplementation="org.intellij.plugins.intelliLang.inject.DefaultLanguageInjectionPerformer"/>

    <languageInjectionContributor id="TemporaryPlacesInjector"
                                  implementationClass="org.intellij.plugins.intelliLang.inject.TemporaryPlacesInjector" language=""
                                  order="before CommentLanguageInjector"/>
    <languageInjectionContributor id="CommentLanguageInjector"
                                  implementationClass="org.intellij.plugins.intelliLang.inject.CommentLanguageInjector"
                                  order="before Default" language=""/>
    <languageInjectionContributor id="Default" implementationClass="org.intellij.plugins.intelliLang.inject.DefaultLanguageInjector"
                                  order="last" language=""/>

    <applicationService serviceInterface="org.intellij.plugins.intelliLang.Configuration"
                        serviceImplementation="org.intellij.plugins.intelliLang.Configuration$App"/>
    <projectService serviceInterface="org.intellij.plugins.intelliLang.Configuration"
                    serviceImplementation="org.intellij.plugins.intelliLang.Configuration$Prj"/>

    <psi.referenceContributor implementation="org.intellij.plugins.intelliLang.references.InjectedReferencesContributor"/>
    <psi.symbolReferenceProvider implementationClass="org.intellij.plugins.intelliLang.references.LanguageReferenceContributor"
                                 hostLanguage=""
                                 hostElementClass="com.intellij.psi.PsiComment"
                                 targetClass="org.intellij.plugins.intelliLang.references.LanguageSymbol"/>
    <completion.contributor language="any" implementationClass="org.intellij.plugins.intelliLang.references.LanguageWordInCommentCompletionContributor" />
    <registryKey key="org.intellij.intelliLang.comment.completion" defaultValue="true"
                 description="Enables completion of 'language=' in comments"/>
    <lang.foldingBuilder language="UAST" implementationClass="org.intellij.plugins.intelliLang.references.LanguageCommentFolding"/>
    <referenceInjector implementation="org.intellij.plugins.intelliLang.references.FileReferenceInjector"/>
    <localInspection implementationClass="org.intellij.plugins.intelliLang.references.InjectedReferencesInspection"
                     enabledByDefault="true" level="ERROR"
                     groupBundle="messages.InspectionsBundle" groupKey="inspection.general.tools.group.name"
                     key="inspection.injected.references.display.name" bundle="messages.IntelliLangBundle"/>
  </extensions>

</idea-plugin>
 lib/platform-langInjection.jar lib/IntelliLang.jar lib/java-langInjection-jps.jar  protoeditor  8<idea-plugin package="com.intellij.protobuf">
  <name>Protocol Buffers</name>
  <id>idea.plugin.protoeditor</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <vendor>JetBrains</vendor>
  <category>Microservices</category>
  <description><![CDATA[
    Provides editor support for <a href="https://developers.google.com/protocol-buffers/">Protocol Buffers</a> files.
    <br>
    Features:
    <ul>
        <li>Support for <code>proto2</code> and <code>proto3</code> syntax levels.</li>
        <li>Syntax highlighting.</li>
        <li>Semantic analysis.</li>
        <li>References and navigation.</li>
        <li>Quick documentation.</li>
        <li>Editor enhancements (completion, brace matching, etc.).</li>
        <li>Navigating between protobuf files and some other languages (Java, Go, Python).</li>
    </ul>
  ]]></description>

  <content>
    <module name="intellij.protoeditor.go"/>
    <module name="intellij.protoeditor.python"/>
    <module name="intellij.protoeditor.jvm"/>
  </content>

  <dependencies>
    <plugin id="com.intellij.modules.lang"/>
  </dependencies>

  <extensionPoints>
    <extensionPoint qualifiedName="com.intellij.protobuf.fileResolveProvider"
                    interface="com.intellij.protobuf.lang.resolve.FileResolveProvider"
                    area="IDEA_PROJECT"
                    dynamic="true"
    />
    <extensionPoint qualifiedName="com.intellij.protobuf.projectSettingsConfigurator"
                    interface="com.intellij.protobuf.ide.settings.ProjectSettingsConfigurator"
                    area="IDEA_PROJECT"
                    dynamic="true"
    />
    <extensionPoint qualifiedName="com.intellij.protobuf.schemaProvider"
                    interface="com.intellij.protobuf.lang.resolve.SchemaProvider"
                    area="IDEA_PROJECT"
                    dynamic="true"
    />
    <extensionPoint qualifiedName="com.intellij.protobuf.nameGeneratorContributor"
                    interface="com.intellij.protobuf.lang.names.NameGeneratorContributor"
                    dynamic="true"
    />
    <extensionPoint qualifiedName="com.intellij.protobuf.codeImplementationSearcher"
                    interface="com.intellij.protobuf.ide.gutter.PbCodeImplementationSearcher"
                    dynamic="true"/>

    <extensionPoint qualifiedName="com.intellij.protobuf.generatedCodeConverterProvider"
                    interface="com.intellij.protobuf.ide.gutter.PbGeneratedCodeConverterProvider"
                    dynamic="true"/>
  </extensionPoints>

  <extensions defaultExtensionNs="com.intellij.protobuf">
    <!-- SettingsFileResolveProvider is listed first so that manually-configured descriptor paths always win. -->
    <fileResolveProvider id="settings" order="FIRST"
                         implementation="com.intellij.protobuf.ide.settings.SettingsFileResolveProvider"/>
    <fileResolveProvider implementation="com.intellij.protobuf.lang.resolve.PbIndexBasedFileResolveProvider"/>

    <!-- Schema definition -->
    <schemaProvider implementation="com.intellij.protobuf.lang.resolve.directive.SchemaDirectiveSchemaProvider"/>
  </extensions>

  <!-- Protobuf extensions -->
  <extensions defaultExtensionNs="com.intellij">
    <!-- Language -->
    <fileType name="protobuf" language="protobuf" implementationClass="com.intellij.protobuf.lang.PbFileType" extensions="proto" fieldName="INSTANCE"/>
    <lang.parserDefinition language="protobuf" implementationClass="com.intellij.protobuf.lang.PbParserDefinition"/>

    <!-- Syntax highlighting -->
    <lang.syntaxHighlighterFactory language="protobuf"
                                   implementationClass="com.intellij.protobuf.ide.highlighter.PbSyntaxHighlighterFactory"/>
    <annotator language="protobuf" implementationClass="com.intellij.protobuf.ide.highlighter.PbHighlightingAnnotator" order="FIRST"/>
    <annotator language="protobuf" implementationClass="com.intellij.protobuf.ide.highlighter.PbTextHighlightingAnnotator" order="FIRST"/>
    <colorSettingsPage implementation="com.intellij.protobuf.ide.highlighter.PbColorSettingsPage"/>

    <!-- Error / warning annotations -->
    <annotator language="protobuf" implementationClass="com.intellij.protobuf.lang.annotation.PbAnnotator"/>
    <annotator language="protobuf" implementationClass="com.intellij.protobuf.lang.annotation.Proto2Annotator"/>
    <annotator language="protobuf" implementationClass="com.intellij.protobuf.lang.annotation.Proto3Annotator"/>
    <annotator language="protobuf" implementationClass="com.intellij.protobuf.lang.annotation.EditionsAnnotator"/>
    <annotator language="protobuf" implementationClass="com.intellij.protobuf.lang.annotation.PbTextAnnotator"/>

    <!-- Structure view -->
    <lang.psiStructureViewFactory language="protobuf" implementationClass="com.intellij.protobuf.ide.views.PbStructureViewFactory"/>

    <!-- Formatting and code style -->
    <copyPastePostProcessor implementation="com.intellij.protobuf.lang.refactoring.json.PbJsonCopyPasteProcessor"/>
    <lang.formatter language="protobuf" implementationClass="com.intellij.protobuf.ide.formatter.PbFormattingModelBuilder"/>
    <codeStyleSettingsProvider implementation="com.intellij.protobuf.ide.style.PbCodeStyleSettingsProvider"/>
    <langCodeStyleSettingsProvider implementation="com.intellij.protobuf.ide.style.PbLanguageCodeStyleSettingsProvider"/>
    <lineIndentProvider implementation="com.intellij.protobuf.ide.editing.PbLineIndentProvider"/>

    <!-- Editor sugar (folding, brace matching, completion, etc.) -->
    <breadcrumbsInfoProvider implementation="com.intellij.protobuf.ide.views.PbBreadcrumbsInfoProvider"/>
    <typedHandler implementation="com.intellij.protobuf.ide.editing.ProtoTypedHandler"/>
    <backspaceHandlerDelegate implementation="com.intellij.protobuf.ide.editing.ProtoBackspaceHandler"/>
    <completion.confidence language="protobuf" implementationClass="com.intellij.protobuf.lang.completion.PbCompletionConfidence"/>
    <completion.contributor language="protobuf" implementationClass="com.intellij.protobuf.lang.completion.PbCompletionContributor"/>
    <enterBetweenBracesDelegate language="protobuf" implementationClass="com.intellij.protobuf.ide.editing.PbEnterBetweenBracesDelegate"/>
    <lang.braceMatcher language="protobuf" implementationClass="com.intellij.protobuf.ide.editing.ProtoBraceMatcher"/>
    <lang.foldingBuilder language="protobuf" implementationClass="com.intellij.protobuf.ide.folding.ProtoFoldingBuilder"/>
    <quoteHandler fileType="protobuf" className="com.intellij.protobuf.ide.editing.ProtoQuoteHandler"/>
    <spellchecker.support language="protobuf" implementationClass="com.intellij.protobuf.ide.spelling.PbSpellcheckingStrategy"/>
    <lang.commenter language="protobuf"
                    implementationClass="com.intellij.protobuf.ide.editing.PbCommenter"/>
    <multiLangCommenter implementation="com.intellij.protobuf.ide.editing.ProtoCommentProvider"/>
    <lang.importOptimizer language="protobuf" implementationClass="com.intellij.protobuf.lang.refactoring.PbImportOptimizer"/>
    <!--suppress PluginXmlCapitalization -->
    <localInspection language="protobuf"
                     bundle="messages.ProtobufLangBundle"
                     key="inspection.duplicated.imports.name"
                     groupBundle="messages.ProtobufLangBundle"
                     groupKey="protobuf.inspections.group.name"
                     enabledByDefault="true"
                     implementationClass="com.intellij.protobuf.lang.inspection.PbDuplicatedImportsInspection"/>
    <codeInsight.lineMarkerProvider language="protobuf"
                                    implementationClass="com.intellij.protobuf.ide.gutter.PbCodeImplementationLineMarkerProvider"/>

    <!-- Navigation -->
    <lang.findUsagesProvider language="protobuf" implementationClass="com.intellij.protobuf.lang.findusages.PbFindUsagesProvider"/>
    <elementDescriptionProvider implementation="com.intellij.protobuf.lang.findusages.PbElementDescriptionProvider"/>
    <usageTypeProvider
      implementation="com.intellij.protobuf.lang.findusages.PbUsageTypeProvider"/>
    <gotoSymbolContributor
      implementation="com.intellij.protobuf.lang.gotobyname.PbGotoSymbolContributor"/>

    <!-- Documentation -->
    <documentationProvider implementation="com.intellij.protobuf.ide.documentation.PbDocumentationProvider"/>

    <!-- Stub indexing -->
    <stubElementTypeHolder externalIdPrefix="protobuf." class="com.intellij.protobuf.lang.stub.type.PbStubElementTypes"/>
    <stubIndex implementation="com.intellij.protobuf.lang.stub.index.QualifiedNameIndex"/>
    <stubIndex implementation="com.intellij.protobuf.lang.stub.index.ShortNameIndex"/>

    <!-- Settings -->
    <projectConfigurable instance="com.intellij.protobuf.ide.settings.PbLanguageSettingsConfigurable" groupId="language"
                         key="settings.project.display" bundle="messages.ProtobufIdeBundle">
      <configurable instance="com.intellij.protobuf.ide.settings.PbTextLanguageSettingsConfigurable"
                    key="prototext.settings.project.display" bundle="messages.ProtobufIdeBundle"/>
    </projectConfigurable>

    <!-- Enable usage highlights for non-project targets -->
    <useScopeEnlarger implementation="com.intellij.protobuf.lang.resolve.PbUseScopeEnlarger"/>

    <!-- Live templates -->
    <liveTemplateContext contextId="PROTO"
      implementation="com.intellij.protobuf.ide.template.PbLanguageContext"/>
    <liveTemplateContext contextId="PROTO_ENUM" baseContextId="PROTO"
      implementation="com.intellij.protobuf.ide.template.PbLanguageContext$EnumBody"/>
    <liveTemplateContext contextId="PROTO_EXTEND" baseContextId="PROTO"
      implementation="com.intellij.protobuf.ide.template.PbLanguageContext$ExtendBody"/>
    <liveTemplateContext contextId="PROTO_MESSAGE" baseContextId="PROTO"
      implementation="com.intellij.protobuf.ide.template.PbLanguageContext$MessageBody"/>
    <liveTemplateContext contextId="PROTO_ONEOF" baseContextId="PROTO"
      implementation="com.intellij.protobuf.ide.template.PbLanguageContext$OneofBody"/>
    <liveTemplateContext contextId="PROTO_SERVICE" baseContextId="PROTO"
      implementation="com.intellij.protobuf.ide.template.PbLanguageContext$ServiceBody"/>

    <iconMapper mappingFile="ProtobufIconMappings.json"/>
  </extensions>

  <!-- Text format extensions -->
  <extensions defaultExtensionNs="com.intellij">
    <!-- Language -->
    <fileType name="prototext" language="prototext" implementationClass="com.intellij.protobuf.lang.PbTextFileType" fieldName="INSTANCE"
              extensions="pb;textproto;txtpb"/>

    <lang.parserDefinition language="prototext" implementationClass="com.intellij.protobuf.lang.PbTextParserDefinition"/>
    <filetype.stubBuilder filetype="prototext" implementationClass="com.intellij.protobuf.lang.stub.PbTextFileStubBuilder"/>

    <!-- Syntax highlighting -->
    <lang.syntaxHighlighterFactory language="prototext"
                                   implementationClass="com.intellij.protobuf.ide.highlighter.PbTextSyntaxHighlighterFactory"/>
    <annotator language="prototext" implementationClass="com.intellij.protobuf.ide.highlighter.PbTextHighlightingAnnotator"/>
    <colorSettingsPage implementation="com.intellij.protobuf.ide.highlighter.PbTextColorSettingsPage"/>

    <!-- Error / warning annotations -->
    <annotator language="prototext" implementationClass="com.intellij.protobuf.lang.annotation.PbTextAnnotator"/>

    <!-- Formatting and code style -->
    <lang.formatter language="prototext" implementationClass="com.intellij.protobuf.ide.formatter.PbTextFormattingModelBuilder"/>
    <codeStyleSettingsProvider implementation="com.intellij.protobuf.ide.style.PbTextCodeStyleSettingsProvider"/>
    <langCodeStyleSettingsProvider implementation="com.intellij.protobuf.ide.style.PbTextLanguageCodeStyleSettingsProvider"/>

    <!-- Editor sugar (folding, brace matching, completion, etc.) -->
    <enterHandlerDelegate implementation="com.intellij.protobuf.ide.editing.PbTextEnterBetweenBracesHandler"/>
    <quoteHandler fileType="prototext" className="com.intellij.protobuf.ide.editing.ProtoQuoteHandler"/>
    <lang.braceMatcher language="prototext" implementationClass="com.intellij.protobuf.ide.editing.ProtoBraceMatcher"/>
    <lang.foldingBuilder language="prototext" implementationClass="com.intellij.protobuf.ide.folding.ProtoFoldingBuilder"/>
    <spellchecker.support language="prototext" implementationClass="com.intellij.protobuf.ide.spelling.PbTextSpellcheckingStrategy"/>
    <lang.commenter language="prototext" implementationClass="com.intellij.protobuf.ide.editing.PbTextCommenter"/>

    <!-- Schema definition -->
    <psi.referenceContributor language="prototext"
                              implementation="com.intellij.protobuf.lang.resolve.directive.SchemaDirectiveReferenceContributor"/>
    <annotator language="prototext" implementationClass="com.intellij.protobuf.lang.resolve.directive.SchemaDirectiveAnnotator"/>
    <daemon.changeLocalityDetector implementation="com.intellij.protobuf.lang.resolve.directive.SchemaDirectiveChangeLocalityDetector"/>
    <completion.contributor language="prototext"
                            implementationClass="com.intellij.protobuf.lang.resolve.directive.SchemaDirectiveCompletionContributor"/>
    <editorNotificationProvider implementation="com.intellij.protobuf.ide.editing.MissingSchemaNotificationProvider"/>
    <templateCompletionProcessor implementation="com.intellij.protobuf.ide.template.ChildEntryTemplateCompletionProcessor"/>
    <templateCompletionProcessor implementation="com.intellij.protobuf.ide.template.SymbolTemplateCompletionProcessor"/>

    <!-- Live templates -->
    <liveTemplateContext contextId="PROTOTEXT"
      implementation="com.intellij.protobuf.ide.template.PbTextLanguageContext"/>

    <dependencySupport coordinate="com.google.protobuf:protobuf-java" kind="java"/>
  </extensions>
  <actions>
    <action
      class="com.intellij.protobuf.ide.actions.InsertSchemaDirectiveAction"
      id="prototext.InsertSchemaDirective">
      <add-to-group group-id="EditorPopupMenu"/>
    </action>
  </actions>
  <resource-bundle>messages.ProtobufIdeBundle</resource-bundle>
</idea-plugin> lib/protoeditor.jar  qodana  eh<idea-plugin>
  <id>org.intellij.qodana</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>Qodana</name>
  <vendor>JetBrains</vendor>

  <description><![CDATA[
    <b>Qodana:</b> The code quality platform for your favorite CI.
    <br/><br/>
    Qodana is a code quality monitoring platform that brings into your CI/CD pipelines all the smart features you love in the JetBrains IDEs as well as project-level checks like clone detection and license audit.
    <br/><br/>
    <a href='https://www.jetbrains.com/qodana/'>Explore Qodana</a>
    <br/><br/>
    The plugin provides a link between a Qodana and your project opened in an IDE:
    <ul>
     <li>Open Qodana static analysis SARIF report and view the issues detected by a Qodana linter</li>
     <li>Use the "Open in IDE" functionality provided by the Qodana UI</li>
    </ul>
    ]]></description>

  <content>
    <module name="intellij.qodana/yaml"/>
    <module name="intellij.qodana.go"/>
    <module name="intellij.qodana.inspectionKts.js"/>
    <module name="intellij.qodana.inspectionKts.kotlin"/>
    <module name="intellij.qodana.js"/>
    <module name="intellij.qodana.php"/>
    <module name="intellij.qodana.python"/>
    <module name="intellij.qodana.jvm.dev"/>
    <module name="intellij.qodana.jvm.gradle"/>
    <module name="intellij.qodana.jvm.groovy"/>
    <module name="intellij.qodana.jvm.kotlin"/>
    <module name="intellij.qodana.jvm.java"/>
    <module name="intellij.qodana.jvm.maven"/>
    <module name="intellij.qodana.jvm.swagger"/>
    <module name="intellij.qodana.jvm.coverage"/>
  </content>

  <depends>com.intellij.modules.lang</depends>
  <depends optional="true" config-file="static-analysis-git.xml">Git4Idea</depends>
  <depends optional="true" config-file="static-analysis-yaml.xml">org.jetbrains.plugins.yaml</depends>
  <depends optional="true" config-file="static-analysis-java.xml">com.intellij.java</depends>

  <resource-bundle>messages.QodanaBundle</resource-bundle>

  <extensions defaultExtensionNs="com.intellij">
    <notificationGroup id="Qodana" displayType="STICKY_BALLOON" bundle="messages.QodanaBundle" key="notification.group.qodana"/>
    <notificationGroup id="Qodana Problems Tab" displayType="BALLOON" bundle="messages.QodanaBundle"
                       key="notification.group.qodana.problems"/>
    <notificationGroup id="Qodana Tips" displayType="BALLOON" bundle="messages.QodanaBundle" key="notification.group.qodana.tips"/>
    <highlightingPassFactory implementation="org.jetbrains.qodana.highlight.QodanaHighlightingPassRegistrar"/>
    <jbProtocolCommand implementation="org.jetbrains.qodana.protocol.JBProtocolQodanaCommand"/>
    <inspectionResultsExportActionProvider implementation="org.jetbrains.qodana.actions.ExportToSarifAction"/>
    <fileType name="SARIF" extensions="sarif" patterns="*.sarif.json;*.sarif*.json"
              implementationClass="org.jetbrains.qodana.filetype.SarifFileType" fieldName="INSTANCE" language="JSON"/>
    <applicationService serviceInterface="org.jetbrains.qodana.cloud.authorization.QodanaCloudOAuthService"
                        serviceImplementation="org.jetbrains.qodana.cloud.authorization.QodanaCloudOAuthServiceImpl"/>
    <httpRequestHandler implementation="org.jetbrains.qodana.cloud.authorization.QodanaCloudOAuthCallbackHandler"/>
    <httpRequestHandler implementation="org.jetbrains.qodana.cloud.authorization.QodanaLicenseAgreementHandler"/>
    <httpRequestHandler implementation="org.jetbrains.qodana.webUi.handlers.QodanaWebUiFileHandler"/>
    <httpRequestHandler implementation="org.jetbrains.qodana.webUi.handlers.QodanaWebUiResourcesHandler"/>
    <httpRequestHandler implementation="org.jetbrains.qodana.webUi.handlers.QodanaWebUiSetupCiHandler"/>
    <httpRequestHandler implementation="org.jetbrains.qodana.webUi.handlers.QodanaWebUiSourcesHandler"/>
    <httpRequestHandler implementation="org.jetbrains.qodana.webUi.handlers.QodanaWebUiStatisticsHandler"/>
    <backgroundPostStartupActivity implementation="org.jetbrains.qodana.QodanaStartupActivity"/>
    <applicationService serviceInterface="org.jetbrains.qodana.cloud.api.QodanaCloudApiProvider"
                        serviceImplementation="org.jetbrains.qodana.cloud.api.QodanaCloudApiProviderImpl"
                        testServiceImplementation="org.jetbrains.qodana.cloud.api.QodanaCloudApiProviderTestImpl"/>
    <projectService serviceInterface="org.jetbrains.qodana.run.QodanaRunInIdeService"
                    serviceImplementation="org.jetbrains.qodana.run.QodanaRunInIdeServiceImpl"
                    testServiceImplementation="org.jetbrains.qodana.run.QodanaRunInIdeServiceTestImpl"/>
    <applicationService serviceInterface="org.jetbrains.qodana.cloud.project.QodanaArtifactsDownloader"
                        serviceImplementation="org.jetbrains.qodana.cloud.project.QodanaArtifactsDownloaderImpl"
                        testServiceImplementation="org.jetbrains.qodana.cloud.project.QodanaArtifactsDownloaderTestImpl"/>
    <applicationService serviceInterface="org.jetbrains.qodana.staticAnalysis.QodanaEnvService"
                        serviceImplementation="org.jetbrains.qodana.staticAnalysis.QodanaEnvServiceImpl"
                        testServiceImplementation="org.jetbrains.qodana.staticAnalysis.QodanaEnvServiceTestImpl"/>

    <webHelpProvider implementation="org.jetbrains.qodana.help.QodanaWebHelpProvider"/>
    <codeInsight.linkHandler prefix="#sarifInspection/" handlerClass="org.jetbrains.qodana.highlight.SarifInspectionDescriptionLinkHandler"/>

    <projectConfigurable
      id="settings.qodana"
      groupId="tools"
      groupWeight="238"
      bundle="messages.QodanaBundle"
      key="configurable.name"
      provider="org.jetbrains.qodana.ui.settings.FactorySettingsPanel"/>

    <editorNotificationProvider implementation="org.jetbrains.qodana.inspectionKts.ui.InspectionKtsBannerProvider"/>

    <statistics.counterUsagesCollector implementationClass="org.jetbrains.qodana.stats.QodanaPluginStatsCounterCollector"/>
    <statistics.projectUsagesCollector implementation="org.jetbrains.qodana.stats.QodanaPluginStatsStateCollector"/>

    <registryKey defaultValue="true" description="Enable Qodana Cloud integration" key="qd.cloud.integration.enabled"
                 restartRequired="true"/>
    <registryKey defaultValue="true" description="Enable Qodana Cloud license agreement check" key="qd.license.agreement.callback.enabled"/>
    <registryKey defaultValue="false" description="Open SARIF in editor" key="qd.open.sarif.in.editor"/>
    <registryKey defaultValue="" description="Qodana Web UI sources" key="qd.web.ui.sources.url"/>
    <registryKey defaultValue="true" description="Open coverage report from Qodana Cloud" key="qd.open.coverage.enabled"/>
    <registryKey defaultValue="true" description="Use smart package filtering for coverage from Qodana Cloud" key="qd.open.coverage.smart.filter.enabled"/>
    <registryKey defaultValue="3" description="Common package filter length for coverage reports from Qodana Cloud" key="qd.open.coverage.common.package.length"/>
    <registryKey defaultValue="100" description="Number of commits to load from VCS per request, used to search Qodana Cloud report relevant to current revision" key="qd.vcs.revision.page.size" restartRequired="true"/>
    <registryKey defaultValue="10" description="Max number of requests to VCS, used to search Qodana Cloud report relevant to current revision" key="qd.vcs.revision.max.pages" restartRequired="true"/>
    <registryKey defaultValue="2" description="Retry attempts count to Qodana Cloud server on failed request" key="qd.cloud.request.retries.count"/>
    <registryKey defaultValue="2" description="Retry attempts count to Qodana Cloud server on failed report download" key="qd.cloud.download.retries.count"/>
    <registryKey defaultValue="false" description="Use whole distribution for .inspection.kts" key="qd.inspection.kts.all.distribution.for.dependencies"/>
    <registryKey defaultValue="true" description="Use inspection.kts dependencies limited only to flexinspect" key="qd.inspection.kts.limited.dependencies"/>

    <registryKey defaultValue="" description="Qodana Cloud website url" key="qd.cloud.website"/>
    <registryKey defaultValue="" description="Qodana Cloud backend api" key="qd.cloud.api"/>
    <registryKey defaultValue="" description="Oauth url used to auth in qodana.cloud" key="qd.cloud.jba.oauth.url"/>
    <registryKey defaultValue="" description="JBA auth referrer accepted by IDE" key="qd.cloud.jba.auth.referrer"/>
    <registryKey defaultValue="" description="Qodana Cloud JBA client id" key="qd.cloud.jba.auth.client.id"/>

    <appStarter id="qodanaExcludedPlugins" implementation="org.jetbrains.qodana.staticAnalysis.inspections.runner.QodanaExcludedPluginsCalculator"/>
    <projectService serviceImplementation="org.jetbrains.qodana.cloud.QodanaCloudDefaultProjectStateService"
                    configurationSchemaKey="qodana" />
    <inspectResultsConsumer implementation="org.jetbrains.qodana.staticAnalysis.inspections.targets.QodanaTeamcityTestReporter"/>
    <inspectionApplicationFactory
      implementation="org.jetbrains.qodana.staticAnalysis.inspections.runner.QodanaInspectionApplicationFactory"/>
    <statistics.counterUsagesCollector implementationClass="org.jetbrains.qodana.staticAnalysis.stat.InspectionEventsCollector"/>
    <statistics.counterUsagesCollector implementationClass="org.jetbrains.qodana.staticAnalysis.stat.UsageCollector"/>
    <statistics.counterUsagesCollector implementationClass="org.jetbrains.qodana.staticAnalysis.stat.CoverageFeatureEventsCollector"/>
    <statistics.validation.customValidationRule implementation="org.jetbrains.qodana.staticAnalysis.stat.InspectionIdValidationRule"/>

    <statistics.counterUsagesCollector implementationClass="org.jetbrains.qodana.staticAnalysis.stat.QodanaProjectInfoCollector"/>
    <problemsViewPanelProvider implementation="org.jetbrains.qodana.ui.problemsView.QodanaProblemsViewPanelProvider"/>
    <globalInspection shortName="QodanaSanity" groupKey="inspection.qodana.tools.group.name" groupBundle="messages.QodanaBundle"
                      enabledByDefault="false" level="ERROR"
                      bundle="messages.QodanaBundle" key="inspection.qodana.sanity.display.name"
                      implementationClass="org.jetbrains.qodana.staticAnalysis.inspections.sanity.QodanaSanity"/>
    <dynamicInspectionsProvider implementation="org.jetbrains.qodana.inspectionKts.KtsDynamicInspectionsProvider"/>

  </extensions>

  <actions resource-bundle="messages.QodanaBundle">
    <group id="Qodana.ShowReportGroup" class="org.jetbrains.qodana.actions.QodanaShowReportGroup" popup="true" icon="icons.QodanaIcons.Icons.Qodana">
      <add-to-group group-id="ToolsMenu" anchor="last"/>
    </group>
    <action id="Qodana.RunQodanaAction" class="org.jetbrains.qodana.actions.RunQodanaAction">
      <synonym text="Run Qodana"/>
      <synonym text="Qodana Analysis"/>
    </action>
    <action id="Qodana.AddQodanaToCiAction" class="org.jetbrains.qodana.actions.AddQodanaToCiAction"/>
    <action id="Qodana.OpenReportAction" class="org.jetbrains.qodana.actions.OpenReportAction"/>
    <action id="Qodana.OpenQodanaCloudSettingsAction" class="org.jetbrains.qodana.actions.OpenQodanaCloudSettingsAction"/>
    <action id="Qodana.OpenQodanaCloudReportAction" class="org.jetbrains.qodana.actions.OpenQodanaCloudReportAction"/>
    <action id="Qodana.SarifFileReportAction" class="org.jetbrains.qodana.actions.SarifFileReportAction"
            icon="icons.QodanaIcons.Icons.Qodana">
      <add-to-group group-id="ProjectViewPopupMenu"/>
    </action>
    <action id="Qodana.ClearQodanaCacheAction" class="org.jetbrains.qodana.actions.ClearQodanaCacheAction"/>

    <group id="Qodana.ProblemTreeActionGroup" class="org.jetbrains.qodana.actions.QodanaProblemTreeExcludeActionGroup" popup="true">
      <add-to-group group-id="ProblemsView.ToolWindow.TreePopup"/>
    </group>
    <action id = "Qodana.ShowBuildPage" class="org.jetbrains.qodana.actions.QodanaShowBuildPageAction" icon="com.intellij.icons.ExpUiIcons.General.Export">
      <add-to-group group-id="ProblemsView.ToolWindow.TreePopup"/>
    </action>
    <action id = "Qodana.ShowBrowserPage" class="org.jetbrains.qodana.actions.QodanaOpenBrowserPageAction" icon="com.intellij.icons.ExpUiIcons.General.Export">
      <add-to-group group-id="ProblemsView.ToolWindow.TreePopup"/>
    </action>

    <group id="Qodana.ProblemsView">
      <action id="Qodana.ProblemsViewCloseReportAction" class="org.jetbrains.qodana.actions.ProblemsViewCloseReportAction"
              icon="AllIcons.Actions.Cancel"/>
      <action id="Qodana.ProblemsView.RefreshReportAction" class="org.jetbrains.qodana.actions.ProblemsViewRefreshReportAction"
              icon="AllIcons.Actions.Refresh"/>
      <action id="Qodana.ProblemsView.Login" class="org.jetbrains.qodana.actions.ProblemsViewCloudLoginAction"/>
      <group id="Qodana.ProblemsView.Link" class="org.jetbrains.qodana.actions.ProblemsViewCloudLinkAction"/>
      <group id="Qodana.ProblemsView.Options" class="org.jetbrains.qodana.ui.problemsView.QodanaProblemsViewGroupByActionGroup"
             icon="AllIcons.Actions.GroupBy" popup="true"/>
      <action id="Qodana.ProblemsView.ShowPreview" class="org.jetbrains.qodana.ui.problemsView.QodanaProblemsViewShowPreviewAction"
              icon="AllIcons.Actions.PreviewDetails"/>
      <reference ref="ExpandAll"/>
      <reference ref="CollapseAll"/>
      <action id="Qodana.ProblemsView.OpenWebUI" class="org.jetbrains.qodana.actions.ProblemsViewOpenWebUiAction"
              icon="AllIcons.Actions.InlayGlobe"/>
      <group id="Qodana.ProblemsView.OtherActions" class="org.jetbrains.qodana.actions.ProblemsViewOtherActionsGroup"
             icon="AllIcons.Actions.More" popup="true"/>
    </group>
    <action id="org.jetbrains.qodana.ui.problemsView.ResetQodanaTabPromoIconAction"
            class="org.jetbrains.qodana.ui.problemsView.ResetQodanaTabPromoIconAction" text="Reset Qodana Tab" internal="true">
      <add-to-group group-id="Internal" anchor="last"/>
    </action>

    <action id="Qodana.NewInspectionKts" class="org.jetbrains.qodana.inspectionKts.templates.NewKtsInspectionAction"
            icon="QodanaIcons.Icons.Qodana">
      <add-to-group group-id="NewGroup" anchor="after" relative-to-action="NewGroup1"/>
    </action>
  </actions>

  <projectListeners>
    <listener class="org.jetbrains.qodana.staticAnalysis.stat.InspectionEventsListener"
              topic="com.intellij.codeInspection.ex.InspectListener"/>
    <listener class="org.jetbrains.qodana.staticAnalysis.sarif.notifications.ToolErrorInspectListener"
              topic="com.intellij.codeInspection.ex.InspectListener"/>
  </projectListeners>

  <extensionPoints>
    <extensionPoint name="projectDescriber"
                    interface="org.jetbrains.qodana.staticAnalysis.projectDescription.QodanaProjectDescriber"
                    dynamic="true"/>
    <extensionPoint name="inspectionProfileProvider"
                    interface="org.jetbrains.qodana.staticAnalysis.profile.QodanaInspectionProfileProvider"
                    dynamic="true"/>
    <extensionPoint name="sarifReportContributor"
                    interface="org.jetbrains.qodana.staticAnalysis.sarif.SarifReportContributor"
                    dynamic="true"/>
    <extensionPoint name="qodanaScriptFactory"
                    interface="org.jetbrains.qodana.staticAnalysis.script.QodanaScriptFactory"
                    dynamic="true"/>
    <extensionPoint name="repositoryRevisionProvider"
                    interface="org.jetbrains.qodana.extensions.RepositoryRevisionProvider"
                    dynamic="true"/>
    <extensionPoint name="repositoryInfoProvider"
                    interface="org.jetbrains.qodana.extensions.RepositoryInfoProvider"
                    dynamic="true"/>
    <extensionPoint name="vcsIgnoredFilesProvider"
                    interface="org.jetbrains.qodana.extensions.VcsIgnoredFilesProvider"
                    dynamic="true"/>
    <extensionPoint name="configUpdateHandler"
                    interface="org.jetbrains.qodana.extensions.ConfigUpdateHandler"
                    dynamic="true"/>
    <extensionPoint name="githubCiConfigHandler"
                    interface="org.jetbrains.qodana.extensions.ci.GitHubCIConfigHandler"
                    dynamic="true"/>
    <extensionPoint name="gitlabCiConfigHandler"
                    interface="org.jetbrains.qodana.extensions.ci.GitLabCIConfigHandler"
                    dynamic="true"/>
    <extensionPoint name="jenkinsConfigHandler"
                    interface="org.jetbrains.qodana.extensions.ci.JenkinsConfigHandler"
                    dynamic="true"/>
    <extensionPoint name="azureCiConfigUpdateHandler"
                    interface="org.jetbrains.qodana.extensions.ci.AzureCIConfigHandler"
                    dynamic="true"/>
    <extensionPoint name="circleCiConfigUpdateHandler"
                    interface="org.jetbrains.qodana.extensions.ci.CircleCIConfigHandler"
                    dynamic="true"/>
    <extensionPoint name="bitbucketCiConfigUpdateHandler"
                    interface="org.jetbrains.qodana.extensions.ci.BitbucketCIConfigHandler"
                    dynamic="true"/>
    <extensionPoint name="vcsRevisionProvider"
                    interface="org.jetbrains.qodana.vcs.VcsRevisionProvider"
                    dynamic="true"/>
    <extensionPoint name="workflowExtension"
                    interface="org.jetbrains.qodana.staticAnalysis.workflow.QodanaWorkflowExtension"
                    dynamic="true"/>
    <extensionPoint name="externalToolsConfigurationProvider"
                    interface="org.jetbrains.qodana.staticAnalysis.inspections.runner.externalTools.ExternalToolsConfigurationProvider"
                    dynamic="true"/>
    <extensionPoint name="globalOutputConsumer"
                    interface="org.jetbrains.qodana.staticAnalysis.inspections.runner.globalOutput.GlobalOutputConsumer"
                    dynamic="true"/>
    <extensionPoint name="externalToolsProvider"
                    interface="org.jetbrains.qodana.staticAnalysis.inspections.runner.externalTools.ExternalToolsProvider"
                    dynamic="true"/>
    <extensionPoint name="problemsViewModuleSupport"
                    interface="org.jetbrains.qodana.ui.problemsView.QodanaGroupByModuleSupport"
                    dynamic="true"/>
    <extensionPoint name="setupCIProviderFactory"
                    interface="org.jetbrains.qodana.ui.ci.SetupCIProviderFactory"
                    dynamic="true"/>
    <extensionPoint name="defaultQodanaYamlItemProvider"
                    interface="org.jetbrains.qodana.settings.QodanaYamlItemProvider"
                    dynamic="true"/>
    <extensionPoint name="qodanaHighlightInfoTypeProvider"
                    interface="org.jetbrains.qodana.extensions.QodanaHighlightInfoTypeProvider"
                    dynamic="true"/>
    <extensionPoint name="qodanaHighlightingSupportInfoProvider"
                    interface="org.jetbrains.qodana.extensions.QodanaHighlightingSupportInfoProvider"
                    dynamic="true"/>
    <extensionPoint name="qodanaHighlightInfoComparator"
                    interface="org.jetbrains.qodana.extensions.QodanaHighlightInfoComparator"
                    dynamic="true"/>
    <extensionPoint name="reportMetadataArtifact"
                    interface="org.jetbrains.qodana.report.ReportMetadataArtifactProvider"
                    dynamic="true"/>
    <extensionPoint name="coverageCloudArtifactsProcessor"
                    interface="org.jetbrains.qodana.coverage.CoverageCloudArtifactsProcessor"
                    dynamic="true"/>
    <extensionPoint name="contextMarginProvider"
                    interface="org.jetbrains.qodana.staticAnalysis.sarif.ContextMarginProvider"
                    dynamic="true"/>
    <extensionPoint name="inspectionKtsDefaultImportProvider"
                    interface="org.jetbrains.qodana.inspectionKts.InspectionKtsDefaultImportProvider"
                    dynamic="true"/>
    <extensionPoint name="inspectionKtsTemplateProvider"
                    interface="org.jetbrains.qodana.inspectionKts.templates.InspectionKtsTemplate$Provider"
                    dynamic="true"/>
    <extensionPoint name="psiViewerSupport"
                    interface="org.jetbrains.qodana.inspectionKts.ui.PsiViewerSupport"
                    dynamic="true"/>
    <extensionPoint name="inspectionKtsExampleProvider"
                    interface="org.jetbrains.qodana.inspectionKts.examples.InspectionKtsExample$Provider"
                    dynamic="true"/>
  </extensionPoints>

  <extensions defaultExtensionNs="org.intellij.qodana">
    <projectDescriber implementation="org.jetbrains.qodana.staticAnalysis.projectDescription.LibrariesDescriber"/>
    <projectDescriber implementation="org.jetbrains.qodana.staticAnalysis.projectDescription.SdksDescriber"/>
    <projectDescriber implementation="org.jetbrains.qodana.staticAnalysis.projectDescription.ModulesDescriber"/>
    <projectDescriber implementation="org.jetbrains.qodana.staticAnalysis.projectDescription.ProjectFingerprintDescriber"/>
    <inspectionProfileProvider implementation="org.jetbrains.qodana.staticAnalysis.profile.providers.QodanaEmbeddedProfilesProvider"/>
    <inspectionProfileProvider implementation="org.jetbrains.qodana.staticAnalysis.profile.providers.QodanaSingleInspectionProfileProvider"/>
    <inspectionProfileProvider implementation="org.jetbrains.qodana.staticAnalysis.profile.providers.QodanaEmptyProfileProvider"/>
    <qodanaScriptFactory implementation="org.jetbrains.qodana.staticAnalysis.script.DefaultScriptFactory"/>
    <qodanaScriptFactory implementation="org.jetbrains.qodana.staticAnalysis.script.ScopedScriptFactory"/>
    <qodanaScriptFactory implementation="org.jetbrains.qodana.staticAnalysis.script.TeamCityChangesScriptFactory"/>
    <globalOutputConsumer implementation="org.jetbrains.qodana.staticAnalysis.inspections.runner.globalOutput.DuplicateCodeConsumer"/>
    <inspectionKtsDefaultImportProvider implementation="org.jetbrains.qodana.inspectionKts.api.MainInspectionKtsDefaultImportProvider"/>

    <workflowExtension
      implementation="org.jetbrains.qodana.staticAnalysis.sarif.notifications.RuntimeNotificationCollector$NotificationWorkflowExtension"/>
    <workflowExtension implementation="org.jetbrains.qodana.staticAnalysis.stat.InspectionStatisticsLogger"/>
    <workflowExtension implementation="org.jetbrains.qodana.staticAnalysis.profile.ProfileDescriptionWriter"/>
    <setupCIProviderFactory implementation="org.jetbrains.qodana.ui.ci.providers.github.SetupGitHubActionsProviderFactory"/>
    <setupCIProviderFactory implementation="org.jetbrains.qodana.ui.ci.providers.gitlab.SetupGitLabCIProviderFactory"/>
    <setupCIProviderFactory implementation="org.jetbrains.qodana.ui.ci.providers.teamcity.SetupTeamcityDslProviderFactory"/>
    <setupCIProviderFactory implementation="org.jetbrains.qodana.ui.ci.providers.jenkins.SetupJenkinsProviderFactory"/>
    <setupCIProviderFactory implementation="org.jetbrains.qodana.ui.ci.providers.azure.SetupAzurePipelinesProviderFactory"/>
    <setupCIProviderFactory implementation="org.jetbrains.qodana.ui.ci.providers.circleci.SetupCircleCIProviderFactory"/>
    <setupCIProviderFactory implementation="org.jetbrains.qodana.ui.ci.providers.space.SetupSpaceAutomationProviderFactory"/>
    <setupCIProviderFactory implementation="org.jetbrains.qodana.ui.ci.providers.bitbucket.SetupBitbucketCIProviderFactory"/>

    <defaultQodanaYamlItemProvider implementation="org.jetbrains.qodana.settings.QodanaYamlHeaderItemProvider"/>
    <defaultQodanaYamlItemProvider implementation="org.jetbrains.qodana.settings.QodanaYamlVersionItemProvider"/>
    <defaultQodanaYamlItemProvider implementation="org.jetbrains.qodana.settings.QodanaYamlProfileItemProvider"/>
    <defaultQodanaYamlItemProvider implementation="org.jetbrains.qodana.settings.QodanaYamlIncludeItemProvider"/>
    <defaultQodanaYamlItemProvider implementation="org.jetbrains.qodana.settings.QodanaYamlExcludeItemProvider"/>
    <defaultQodanaYamlItemProvider implementation="org.jetbrains.qodana.settings.QodanaYamlBootstrapItemProvider"/>
    <defaultQodanaYamlItemProvider implementation="org.jetbrains.qodana.settings.QodanaYamlPluginItemProvider"/>
    <defaultQodanaYamlItemProvider implementation="org.jetbrains.qodana.settings.QodanaYamlLinterItemProvider"/>
    <contextMarginProvider implementation="org.jetbrains.qodana.staticAnalysis.inspections.coverage.CoverageContextMarginProvider"/>
    <sarifReportContributor implementation="org.jetbrains.qodana.staticAnalysis.sarif.ResultSummaryContributor"/>
    <sarifReportContributor implementation="org.jetbrains.qodana.staticAnalysis.sarif.FailureConditionsContributor"/>
    <sarifReportContributor
      implementation="org.jetbrains.qodana.staticAnalysis.sarif.notifications.RuntimeNotificationCollector$NotificationReportContributor"/>
    <qodanaHighlightingSupportInfoProvider implementation="org.jetbrains.qodana.extensions.DefaultQodanaHighlightingSupportInfoProvider"/>
    <qodanaHighlightInfoComparator implementation="org.jetbrains.qodana.extensions.DuplicatedCodeQodanaHighlightInfoComparator"/>
    <inspectionKtsTemplateProvider implementation="org.jetbrains.qodana.inspectionKts.templates.AnyLanguageInspectionKtsTemplateProvider"/>
    <inspectionKtsTemplateProvider implementation="org.jetbrains.qodana.inspectionKts.templates.AnyLanguageGlobalInspectionKtsTemplateProvider"/>
    <inspectionKtsExampleProvider implementation="org.jetbrains.qodana.inspectionKts.examples.JsonYamlInspectionKtsExampleProvider"/>
  </extensions>
</idea-plugin>
 lib/qodana.jar  react  P<idea-plugin package="com.intellij.react">
  <name>React</name>
  <id>com.intellij.react</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <category>JavaScript Frameworks and Tools</category>
  <vendor>JetBrains</vendor>
  <description><![CDATA[
    <p>Provides support for JSX-based frameworks like React, Solid.js, Preact, and more.
<h2>Features</h2>
<ul>
  <li>Code completion for components and properties
  <li>Usages and navigation
  <li>JSX-specific code inspections and quick-fixes for common issues
  <li>In-product documentation
  <li>Code formatting
  <li>JSX and TSX refactorings such as <i>Rename</i>, <i>Move</i>, and <i>Extract Component</i>
  <li>Code snippets (<i>Live Templates</i>)
  <li>Emmet in JSX
</ul>

<p>The plugin is bundled in IntelliJ IDEA Ultimate, WebStorm, PhpStorm, PyCharm Professional, RubyMine, GoLand, Rider, and CLion.

<h2>Getting started</h2>

<p>Open your React or any other JSX-based project in the IDE or create a new one.
The React plugin will automatically detect the presence of JSX files and provide its features accordingly.

<p>For more information on getting started, head over to the <a href="https://www.jetbrains.com/help/">documentation</a> for your IDE.
  ]]></description>

  <dependencies>
    <plugin id="JavaScript"/>
  </dependencies>

  <extensions defaultExtensionNs="com.intellij">
    <dependencySupport kind="javascript" coordinate="npm:react" displayName="React"/>

    <lang.documentationProvider language="TypeScript"
                                order="first"
                                implementationClass="com.intellij.react.ReactTagDocumentationProvider"/>
    <lang.documentationProvider language="JavaScript"
                                order="first"
                                implementationClass="com.intellij.react.ReactTagDocumentationProvider"/>

    <implicitUsageProvider order="first" implementation="com.intellij.react.ReactImplicitUsageProvider"/>
    <xml.zenCodingFilter order="first" implementation="com.intellij.react.ReactFilter"/>
    <xml.xmlAttributeRenameProvider implementation="com.intellij.react.fix.ReactUnresolvedPropFixProvider"/>
    <directoryProjectGenerator implementation="com.intellij.react.ReactCreateAppProjectGenerator"/>
    <projectTemplatesFactory implementation="com.intellij.react.ReactProjectTemplateFactory"/>
    <moduleBuilder builderClass="com.intellij.react.AllReactProjectModuleBuilder" />
    <automaticRenamerFactory implementation="com.intellij.react.refactoring.rename.JSReactHooksAutomaticRenamerFactory"/>
    <renamePsiElementProcessor implementation="com.intellij.react.refactoring.rename.ReactPropTypesRenameProcessor"/>
    <dynamicContextProvider implementation="com.intellij.react.references.ReactDynamicContextProvider"/>
    <xml.xmlCustomTagHighlightingStrategy implementation="com.intellij.react.highlighting.ReactClientComponentHighlightingStrategy" />

    <defaultLiveTemplates file="liveTemplates/react.xml"/>
    <defaultLiveTemplates file="liveTemplates/react-hooks.xml"/>

    <intentionAction>
      <language>JavaScript</language>
      <className>com.intellij.react.refactoring.ReactFunctionToClassComponentIntention</className>
      <bundleName>messages.JavaScriptBundle</bundleName>
      <categoryKey>intention.category.react</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>JavaScript</language>
      <className>com.intellij.react.refactoring.ReactClassToFunctionComponentIntention</className>
      <bundleName>messages.JavaScriptBundle</bundleName>
      <categoryKey>intention.category.react</categoryKey>
    </intentionAction>
  </extensions>

  <extensions defaultExtensionNs="JavaScript">
    <jsxImplementation implementation="com.intellij.react.ReactJSXImplementation"/>

    <unresolvedReferenceErrorUpdater id="React" implementation="com.intellij.react.fix.ReactUnresolvedReferenceFixProvider"/>
    <unresolvedReferenceErrorUpdater id="JSX" implementation="com.intellij.react.ReactJSXReferenceErrorUpdater"/>

    <projectGeneratorPanelCustomizer order="last" implementation="com.intellij.react.ReactProjectGeneratorSettingsCustomizer"/>
    <importCandidatesFactory id="es6ReactDefault" order="after es6ExistingImports"
                             implementation="com.intellij.react.ES6ExportedReactCandidatesProvider$MyFactory"/>
    <frameworkSpecificStructureViewExtension implementation="com.intellij.react.structureView.ReactStructureExtension"/>

    <frameworkIndexingHandler implementation="com.intellij.react.ReactFrameworkIndexingHandler" version="7"/>
    <moduleReferenceContributor implementation="com.intellij.react.references.ReactLibraryModuleReferenceContributor"/>
    <frameworkSpecificHandler language="JavaScript"
                              implementationClass="com.intellij.react.ReactFrameworkSpecificHandler"/>
    <completionPlaceFilter implementation="com.intellij.react.ReactFilterProvider" />
    <importCandidatesFactory id="hardcoded"
                             implementation="com.intellij.react.ReactHardcodedCandidatesProvider$MyFactory"/>
  </extensions>

  <actions resource-bundle="messages.ReactBundle">
    <action id="ReactExtractComponentAction"
            class="com.intellij.react.refactoring.extractComponent.ReactExtractComponentAction">
      <add-to-group group-id="IntroduceActionsGroup"/>
    </action>
    <action id="ReactFunctionToClassComponentAction"
            class="com.intellij.react.refactoring.ReactFunctionToClassComponentAction">
      <add-to-group group-id="RefactoringMenu" anchor="after" relative-to-action="ChangeSignature"/>
    </action>
    <action id="ReactClassToFunctionComponentAction"
            class="com.intellij.react.refactoring.ReactClassToFunctionComponentAction">
      <add-to-group group-id="RefactoringMenu" anchor="after" relative-to-action="ChangeSignature"/>
    </action>
  </actions>
</idea-plugin> 
lib/react.jar  remote-dev-server  N<idea-plugin implementation-detail="true">
  <name>Remote Development Server</name>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <vendor>JetBrains</vendor>
  <description>
    <![CDATA[
        JetBrains Remote Development Server
        <p>
        Launch IDE in Unattended Mode and provide connection access to a remote host.
      ]]>
  </description>

  <incompatible-with>com.intellij.modules.appcode</incompatible-with>
  <incompatible-with>com.intellij.cwm.guest</incompatible-with>
  <incompatible-with>com.intellij.jetbrains.client</incompatible-with>
  <incompatible-with>com.intellij.gateway</incompatible-with>
  <incompatible-with>com.intellij.kotlin.mobile</incompatible-with>

  <resource-bundle>messages.RemoteDevelopmentServerBundle</resource-bundle>
</idea-plugin>
 lib/remote-dev-server.jar  	remoteRun  <idea-plugin implementation-detail="true" package="com.jetbrains.plugins.remotesdk">
  <name>SSH Remote Run</name>
  <id>org.jetbrains.plugins.remote-run</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <vendor>JetBrains</vendor>
  <description>Allows to run scripts remotely via ssh</description>

  <dependencies>
    <plugin id="com.intellij.modules.ultimate"/>
    <plugin id="com.jetbrains.plugins.webDeployment"/>
    <plugin id="org.jetbrains.plugins.terminal"/>
  </dependencies>

  <extensionPoints>
    <extensionPoint qualifiedName="RemoteRun.sshConnectionProvider"
                    interface="com.jetbrains.plugins.remotesdk.SshConnectionProvider" dynamic="true"/>
    <extensionPoint qualifiedName="com.jetbrains.plugins.remotesdk.usagesProvider"
                    interface="com.jetbrains.plugins.remotesdk.RemoteSdkUsagesProvider" dynamic="true"/>
  </extensionPoints>

  <extensions defaultExtensionNs="com.intellij">
    <projectService
      serviceInterface="com.jetbrains.plugins.remotesdk.target.ssh.target.SshTempTargetPathsService"
      serviceImplementation="com.jetbrains.plugins.remotesdk.target.ssh.target.SshTempTargetPathsServiceImpl"/>
    <experimentalFeature id="reuse.target.paths.for.rsync" percentOfUsers="100">
      <description>Makes SSH targets with rsync enabled reuse remote paths for different runs of run configurations within one run of IDE.
      </description>
    </experimentalFeature>

    <dynamicActionConfigurationCustomizer implementation="com.jetbrains.plugins.remotesdk.tools.RemoteToolManager$MyActionTuner"/>

    <executionTargetType implementation="com.jetbrains.plugins.remotesdk.target.ssh.target.SshTargetType"/>
    <executionTargetType implementation="com.jetbrains.plugins.remotesdk.target.webDeployment.WebDeploymentTargetType"/>
    <executionTargetType implementation="com.jetbrains.plugins.remotesdk.target.vagrant.VagrantTargetType"/>

    <projectConfigurable groupId="tools" groupWeight="110"
                         bundle="messages.RemoteSdkBundle"
                         key="configurable.SshConsoleOptionsConfigurable.display.name"
                         id="sshConsole" instance="com.jetbrains.plugins.remotesdk.console.SshConsoleOptionsConfigurable"/>

    <applicationConfigurable groupId="tools"
                             bundle="messages.RemoteSdkBundle"
                             key="configurable.RemoteToolConfigurable.display.name"
                             id="preferences.remoteExternalTools" instance="com.jetbrains.plugins.remotesdk.tools.RemoteToolConfigurable"/>

    <toolsProvider implementation="com.jetbrains.plugins.remotesdk.tools.RemoteToolsProvider"/>

    <keymapExtension implementation="com.jetbrains.plugins.remotesdk.tools.RemoteToolKeymapExtension"/>

    <stepsBeforeRunProvider implementation="com.jetbrains.plugins.remotesdk.tools.RemoteToolBeforeRunTaskProvider"/>
    <remote.pathMappingProvider implementation="com.jetbrains.plugins.remotesdk.PublishConfigMappingProvider"/>
    <sshCredentialProvider implementation="com.jetbrains.plugins.remotesdk.SshRemoteSdkCredentialsProvider"/>

    <statistics.applicationUsagesCollector implementation="com.jetbrains.plugins.remotesdk.RemoteSdkTypeUsagesCollector$AppCollector"/>
    <statistics.projectUsagesCollector implementation="com.jetbrains.plugins.remotesdk.RemoteSdkTypeUsagesCollector$ProjectCollector"/>

    <remote.credentialsType implementation="com.jetbrains.plugins.remotesdk.SshCredentialsType"/>
    <remote.credentialsType implementation="com.jetbrains.plugins.remotesdk.VagrantCredentialsType"/>
    <remote.credentialsType implementation="com.jetbrains.plugins.remotesdk.SshConfigCredentialsType"/>
    <remote.credentialsType implementation="com.jetbrains.plugins.remotesdk.WebDeploymentCredentialsType"/>

    <themeMetadataProvider path="/META-INF/remote-run.themeMetadata.json"/>
  </extensions>

  <extensions defaultExtensionNs="RemoteRun">
    <sshConnectionProvider implementation="com.jetbrains.plugins.remotesdk.VagrantSshConnectionProvider"/>
  </extensions>

  <extensions defaultExtensionNs="org.jetbrains.plugins.terminal">
    <openPredefinedTerminalProvider implementation="com.jetbrains.plugins.remotesdk.console.OpenPredefinedTerminalSshSessionActionProvider"/>
  </extensions>

  <actions resource-bundle="messages.RemoteSdkBundle">
    <action id="com.jetbrains.plugins.remotesdk.console.RunSshConsoleAction"
            class="com.jetbrains.plugins.remotesdk.console.RunSshConsoleAction">
      <add-to-group group-id="ToolsMenu" anchor="last"/>
    </action>

    <group id="RemoteExternalToolsGroup" class="com.jetbrains.plugins.remotesdk.tools.RemoteExternalToolActionGroup">
      <add-to-group group-id="ToolsMenu" anchor="last"/>
    </group>
    <action id="com.jetbrains.plugins.remotesdk.console.RunSshConsoleInFileAction"
            class="com.jetbrains.plugins.remotesdk.console.RunSshConsoleInFileAction" popup="true">
      <add-to-group group-id="RemoteHostViewPopupMenu" anchor="last"/>
    </action>
  </actions>
</idea-plugin>
 lib/remoteRun.jar  
restClient  <idea-plugin package="com.intellij.httpClient">
  <id>com.jetbrains.restClient</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>HTTP Client</name>
  <category>Microservices</category>
  <description>
    <![CDATA[
      Provides the ability to compose and execute HTTP requests from the code editor.<br/><br/>

      The following features are available:
      <ul>
        <li>Coding assistance with completion, highlighting, folding, and inline documentation</li>
        <li>Live templates</li>
        <li>Environment and in-place variables</li>
        <li>Response handling API</li>
        <li>Import from Postman Collections and from cURL</li>
        <li>Send gRPC, WebSocket, and GraphQL requests in addition to regular HTTP</li>
        <li>Support for OAuth 2.0 authorization: authenticate using the built-in browser, get access tokens, and preview auth logs</li>
      </ul>
      See the <a href="helpInstance:Http_client_in__product__code_editor">documentation</a> for details.
      ]]>
  </description>
  <vendor>JetBrains</vendor>

  <dependencies>
    <plugin id="com.intellij.modules.lang"/>
    <plugin id="com.intellij.modules.xml"/>
    <plugin id="com.intellij.modules.ultimate"/>
    <plugin id="com.intellij.modules.microservices"/>
    <plugin id="com.intellij.platform.images"/>
  </dependencies>

  <content>
    <module name="intellij.restClient/intelliLang"/>
    <module name="intellij.restClient/javaScript"/>
    <module name="intellij.restClient/microservicesUI"/>
    <module name="intellij.restClient/intelliLangInJs"/>
    <module name="intellij.httpClient.injection.graphql"/>
  </content>

  <resource-bundle>messages.RestClientBundle</resource-bundle>
  <extensionPoints>
    <extensionPoint qualifiedName="com.intellij.httpClient.debugger"
                    interface="com.intellij.httpClient.http.request.debug.HttpRequestDebugger" dynamic="true"/>
    <extensionPoint qualifiedName="com.intellij.httpClient.embeddedSyntaxHighlighterProvider"
                    interface="com.intellij.httpClient.http.request.highlighting.EmbeddedSyntaxHighlighterProvider" dynamic="true"/>
    <extensionPoint qualifiedName="com.intellij.httpClient.requestExecutionSupport"
                    interface="com.intellij.httpClient.execution.common.RequestExecutionSupport" dynamic="true"/>
    <extensionPoint qualifiedName="com.intellij.httpClient.whatsNewContentProvider"
                    interface="com.intellij.httpClient.http.request.notification.HttpClientWhatsNewContentProvider" dynamic="true"/>
    <extensionPoint qualifiedName="com.intellij.httpClient.responseCustomPresentation"
                    interface="com.intellij.httpClient.http.request.run.console.HttpResponseCustomPresentation" dynamic="true"/>
    <extensionPoint qualifiedName="com.intellij.httpClient.customVariableDeclarationProvider"
                    interface="com.intellij.httpClient.http.request.environment.HttpClientCustomVariableDeclarationProvider"
                    dynamic="true"/>
    <extensionPoint qualifiedName="com.intellij.httpClient.scriptBodyBlockProvider"
                    interface="com.intellij.httpClient.http.request.psi.codeStyle.HttpClientScriptBodyBlockProvider" dynamic="true"/>
    <extensionPoint qualifiedName="com.intellij.httpClient.handlerScriptInitializer"
                    interface="com.intellij.httpClient.http.request.codeInsight.HttpClientHandlerScriptInitializer" dynamic="true"/>
    <extensionPoint qualifiedName="com.intellij.httpClient.dynamicVariablesProvider"
                    interface="com.intellij.httpClient.http.request.dynamicVariables.HttpClientDynamicVariables$DynamicVariablesProvider"
                    dynamic="true"/>
    <extensionPoint qualifiedName="com.intellij.httpClient.addRequestTemplateProvider"
                    interface="com.intellij.httpClient.actions.AddRequestTemplateProvider"
                    dynamic="true"/>
    <extensionPoint qualifiedName="com.intellij.httpClient.openCollectionExternalProvider"
                    interface="com.intellij.httpClient.actions.HttpRequestOpenCollectionExternalProvider"
                    dynamic="true"/>
  </extensionPoints>
  <extensions defaultExtensionNs="com.intellij">
    <httpClient.requestExecutionSupport implementation="com.intellij.httpClient.execution.impl.HttpRequestRunSupport"/>
    <httpClient.requestExecutionSupport implementation="com.intellij.httpClient.execution.impl.HttpRequestDebugSupport"/>

    <microservices.clientGenerator implementation="com.intellij.httpClient.converters.curl.CurlClientGenerator"/>

    <copyPastePreProcessor implementation="com.intellij.httpClient.actions.copyPaste.CurlCopyPastePreProcessor"/>
    <projectService serviceImplementation="com.intellij.httpClient.http.request.run.HttpRequestHistoryManager"/>
    <projectService serviceImplementation="com.intellij.httpClient.http.request.cookies.HttpRequestCookiesStorage"/>
    <applicationService serviceImplementation="com.intellij.httpClient.http.request.run.console.HttpSingleResponseConsoleSettings"/>

    <fileBasedIndex implementation="com.intellij.httpClient.http.request.environment.HttpRequestEnvironmentIndex"/>
    <fileBasedIndex implementation="com.intellij.httpClient.http.request.index.HttpRequestHostIndex"/>
    <fileBasedIndex implementation="com.intellij.httpClient.http.request.index.HttpRequestHeaderIndex$HttpRequestHeadersValuesIndex"/>
    <fileBasedIndex implementation="com.intellij.httpClient.http.request.index.HttpRequestNameIndex"/>

    <fileType name="HTTP Request" implementationClass="com.intellij.httpClient.http.request.HttpRequestFileType" fieldName="INSTANCE"
              language="HTTP Request" extensions="http;rest"/>
    <fileType name="Cookie storage file" implementationClass="com.intellij.httpClient.http.request.cookies.CookieStorageFileType"
              fieldName="INSTANCE" language="Cookie" fileNames="http-client.cookies"/>

    <editorNotificationProvider implementation="com.intellij.httpClient.http.request.notification.HttpClientNotificationPanelProvider"/>
    <editorNotificationProvider implementation="com.intellij.httpClient.converters.legacy.LegacyRestClientNotificationPanelProvider"/>
    <editorNotificationProvider
      implementation="com.intellij.httpClient.http.request.notification.HttpClientHistoryFileNotificationPanelProvider"/>

    <editorHighlighterProvider filetype="HTTP Request"
                               implementationClass="com.intellij.httpClient.http.request.highlighting.HttpRequestHighlighterProvider"/>
    <lang.syntaxHighlighterFactory language="Cookie"
                                   implementationClass="com.intellij.httpClient.http.request.cookies.highlighting.CookieSyntaxHighlighterFactory"/>

    <fileIndentOptionsProvider implementation="com.intellij.httpClient.http.request.psi.codeStyle.HttpRequestIndentOptionsProvider"/>
    <lang.formatter language="HTTP Request"
                    implementationClass="com.intellij.httpClient.http.request.psi.codeStyle.HttpRequestFormattingModelBuilder"/>
    <langCodeStyleSettingsProvider implementation="com.intellij.httpClient.http.request.cookies.CookieCodeStyleSettingsProvider"/>
    <codeStyleSettingsProvider
      implementation="com.intellij.httpClient.http.request.psi.codeStyle.settings.HttpRequestCodeStyleSettingsProvider"/>
    <langCodeStyleSettingsProvider
      implementation="com.intellij.httpClient.http.request.psi.codeStyle.settings.HttpRequestLanguageCodeStyleSettingsProvider"/>

    <lang.parserDefinition language="HTTP Request"
                           implementationClass="com.intellij.httpClient.http.request.parser.HttpRequestParserDefinition"/>
    <lang.parserDefinition language="Cookie"
                           implementationClass="com.intellij.httpClient.http.request.cookies.CookieStorageParserDefinition"/>
    <annotator language="Cookie" implementationClass="com.intellij.httpClient.http.request.cookies.annotator.CookieLanguageAnnotator"/>
    <lang.commenter language="HTTP Request" implementationClass="com.intellij.httpClient.http.request.HttpRequestCommenter"/>
    <typedHandler implementation="com.intellij.httpClient.http.request.HttpRequestTypedHandler"/>
    <braceMatcher filetype="HTTP Request" implementationClass="com.intellij.httpClient.http.request.HttpRequestBraceMatcher"/>
    <lang.psiStructureViewFactory language="HTTP Request"
                                  implementationClass="com.intellij.httpClient.http.request.structure.HttpRequestStructureViewFactory"/>
    <lang.elementManipulator forClass="com.intellij.httpClient.http.request.psi.HttpRequestTarget"
                             implementationClass="com.intellij.httpClient.http.request.psi.manipulators.HttpRequestTargetManipulator"/>
    <lang.elementManipulator forClass="com.intellij.httpClient.http.request.psi.HttpFilePath"
                             implementationClass="com.intellij.httpClient.http.request.psi.manipulators.HttpRequestFilePathManipulator"/>
    <lang.elementManipulator forClass="com.intellij.httpClient.http.request.psi.HttpMessageBody"
                             implementationClass="com.intellij.httpClient.http.request.psi.manipulators.HttpRequestMessageManipulator"/>
    <lang.elementManipulator forClass="com.intellij.httpClient.http.request.psi.HttpDynamicVariableArg"
                             implementationClass="com.intellij.httpClient.http.request.psi.manipulators.HttpDynamicVariableArgManipulator"/>
    <psi.referenceContributor language="HTTP Request"
                              implementation="com.intellij.httpClient.http.request.psi.references.HttpRequestReferenceContributor"/>
    <psi.referenceContributor language="JSON"
                              implementation="com.intellij.httpClient.http.request.environment.reference.HttpRequestEnvironmentFileReferenceContributor"/>
    <psi.referenceContributor language="JSON"
                              implementation="com.intellij.httpClient.http.request.environment.reference.HttpRequestEnvironmentVariablesReferenceContributor"/>
    <lang.findUsagesProvider language="HTTP Request"
                             implementationClass="com.intellij.httpClient.http.request.findUsages.HttpRequestFindUsagesProvider"/>
    <codeInsight.lineMarkerProvider language="HTTP Request"
                                    implementationClass="com.intellij.httpClient.http.request.codeInsight.HttpRequestDiffLineMarkerProvider"/>

    <lang.documentationProvider language="HTTP Request"
                                implementationClass="com.intellij.httpClient.http.request.documentation.comments.HttpDocTagsDocumentationProvider"/>
    <lang.documentationProvider language="HTTP Request"
                                implementationClass="com.intellij.httpClient.execution.header.HttpHeadersDocumentationProvider"/>
    <lang.documentationProvider language="HTTP Request"
                                implementationClass="com.intellij.httpClient.http.request.HttpRequestVariableDocumentationProvider"/>

    <syntaxHighlighter key="HTTP Request"
                       implementationClass="com.intellij.httpClient.http.request.highlighting.HttpRequestSyntaxHighlighter"/>
    <highlightingPassFactory implementation="com.intellij.httpClient.http.request.highlighting.HttpRequestNameHighlightingPassFactory"/>
    <highlightingPassFactory
      implementation="com.intellij.httpClient.http.request.highlighting.HttpRequestFormUrlencodedBodyHighlightingPassFactory"/>
    <highlightVisitor implementation="com.intellij.httpClient.http.request.highlighting.HttpRequestRainbowVisitor"/>
    <colorSettingsPage implementation="com.intellij.httpClient.http.request.highlighting.HttpRequestColorSettingsPage"/>
    <additionalTextAttributes scheme="Default" file="colorSchemes/HttpRequestDefault.xml"/>

    <lang.foldingBuilder language="HTTP Request"
                         implementationClass="com.intellij.httpClient.http.request.folding.HttpRequestFoldingBuilder"/>

    <configurationType implementation="com.intellij.httpClient.http.request.run.config.HttpRequestRunConfigurationType"/>
    <runConfigurationProducer
      implementation="com.intellij.httpClient.http.request.run.config.HttpSingleRequestRuntimeConfigurationProducer"/>
    <runConfigurationProducer implementation="com.intellij.httpClient.http.request.run.config.HttpFileRuntimeConfigurationProducer"/>
    <runLineMarkerContributor language="HTTP Request"
                              implementationClass="com.intellij.httpClient.http.request.run.HttpRequestLineMarkerProvider"/>
    <runDashboardDefaultTypesProvider
      implementation="com.intellij.httpClient.http.request.run.config.HttpRequestRunDashboardDefaultTypesProvider"/>
    <runDashboardCustomizer implementation="com.intellij.httpClient.http.request.run.config.HttpRequestRunDashboardCustomizer"/>

    <completion.contributor language="HTTP Request"
                            implementationClass="com.intellij.httpClient.http.request.completion.HttpRequestCompletionContributor"/>
    <typedHandler implementation="com.intellij.httpClient.http.request.completion.HttpClientAutoPopupCompletionTypedHandler"/>

    <documentationProvider implementation="com.intellij.httpClient.http.request.psi.references.HttpReferenceDocumentationProvider"/>
    <refactoring.moveHandler implementation="com.intellij.httpClient.http.request.refactoring.HttpMoveRequestDelegate"/>
    <renamePsiElementProcessor implementation="com.intellij.httpClient.http.request.refactoring.HttpRequestFakeRenameProcessor"/>

    <internalFileTemplate name="HTTP Request"/>
    <internalFileTemplate name="HTTP Request Scratch"/>
    <internalFileTemplate name="HTTP Public Environment File"/>
    <internalFileTemplate name="HTTP Private Environment File"/>

    <liveTemplateContext contextId="REQUEST" implementation="com.intellij.httpClient.http.request.liveTemplates.HttpRequestTemplateContextType"/>
    <liveTemplateContext contextId="REQUEST_HEADER" baseContextId="REQUEST"
                         implementation="com.intellij.httpClient.http.request.liveTemplates.HttpRequestHeaderTemplateContextType"/>
    <liveTemplateContext contextId="REQUEST_AUTH_HEADER" baseContextId="REQUEST"
                         implementation="com.intellij.httpClient.http.request.liveTemplates.HttpRequestAuthHeaderTemplateContextType"/>
    <liveTemplateContext contextId="REQUEST_RESPONSE_HANDLER_PATH" baseContextId="REQUEST"
                         implementation="com.intellij.httpClient.http.request.liveTemplates.HttpRequestBodyTemplateContextType" />
    <liveTemplateContext contextId="HTTP_CLIENT_ENVIRONMENT"
      implementation="com.intellij.httpClient.http.request.environment.liveTemplates.HttpRequestEnvironmentTemplateContextType$General"/>
    <liveTemplateContext contextId="HTTP_CLIENT_ENVIRONMENT_INSIDE_ENVIRONMENT" baseContextId="HTTP_CLIENT_ENVIRONMENT"
      implementation="com.intellij.httpClient.http.request.environment.liveTemplates.HttpRequestEnvironmentTemplateContextType$Environment$All"/>
    <liveTemplateContext contextId="HTTP_CLIENT_ENVIRONMENT_INSIDE_PRIVATE_ENVIRONMENT" baseContextId="HTTP_CLIENT_ENVIRONMENT"
      implementation="com.intellij.httpClient.http.request.environment.liveTemplates.HttpRequestEnvironmentTemplateContextType$Environment$Private"/>
    <liveTemplateContext contextId="HTTP_CLIENT_ENVIRONMENT_INSIDE_PUBLIC_ENVIRONMENT" baseContextId="HTTP_CLIENT_ENVIRONMENT"
                         implementation="com.intellij.httpClient.http.request.environment.liveTemplates.HttpRequestEnvironmentTemplateContextType$Environment$Public"/>
    <liveTemplateContext contextId="HTTP_CLIENT_ENVIRONMENT_OBJECT_FOR_ENVIRONMENTS" baseContextId="HTTP_CLIENT_ENVIRONMENT"
      implementation="com.intellij.httpClient.http.request.environment.liveTemplates.HttpRequestEnvironmentTemplateContextType$ObjectForEnvironments"/>
    <liveTemplateContext contextId="HTTP_CLIENT_ENVIRONMENT_AUTH_CONFIG" baseContextId="HTTP_CLIENT_ENVIRONMENT"
                         implementation="com.intellij.httpClient.http.request.environment.liveTemplates.HttpRequestEnvironmentTemplateContextType$AuthObject"/>
    <defaultLiveTemplates file="liveTemplates/request.xml"/>
    <liveTemplateMacro implementation="com.intellij.httpClient.http.request.environment.liveTemplates.JsonAddCommaMacro"/>
    <liveTemplateMacro implementation="com.intellij.httpClient.http.request.environment.liveTemplates.AuthGrantTypeFieldsMacro"/>
    <liveTemplateMacro implementation="com.intellij.httpClient.http.request.environment.liveTemplates.PropertyUniqueNameMacro"/>
    <scratch.creationHelper language="HTTP Request"
                            implementationClass="com.intellij.httpClient.http.request.actions.HttpRequestScratchFileCreationHelper"/>

    <ignoredFileProvider implementation="com.intellij.httpClient.http.request.run.HttpRequestIgnoredFileProvider"/>

    <indexedRootsProvider implementation="com.intellij.httpClient.http.request.HttpRequestCollectionProvider"/>

    <toolWindowAllowlist id="REST Client"/>

    <registryKey key="http.client.response.handler.force.use.rhino" defaultValue="true"
                 description="Force use Rhino instead Nashorn to execute JS response handler in HTTP Client."/>
    <registryKey key="http.client.show.debug.actions" defaultValue="true" description="Enable debugger for in-editor HTTP Requests."/>
    <registryKey defaultValue="true" description="Force new run line marker for HTTP Client" key="http.client.run.line.marker.force.v2"/>

    <statistics.counterUsagesCollector implementationClass="com.intellij.httpClient.http.request.HttpClientConversionsLogger"/>
    <statistics.counterUsagesCollector implementationClass="com.intellij.httpClient.actions.generation.HttpGenerationUsageCollector"/>
    <statistics.counterUsagesCollector
      implementationClass="com.intellij.httpClient.http.request.run.statistics.HttpClientExecutionUsageCollector"/>
    <statistics.counterUsagesCollector implementationClass="com.intellij.httpClient.actions.HttpClientActionsUsage"/>
    <statistics.validation.customValidationRule
      implementation="com.intellij.httpClient.http.request.run.statistics.HttpClientMethodValidationRule"/>
    <extendWordSelectionHandler implementation="com.intellij.httpClient.http.request.editor.HttpRequestDynamicVariableSelectioner"/>
    <notificationGroup id="HTTP Client" displayType="TOOL_WINDOW" toolWindowId="Run" bundle="messages.RestClientBundle"
                       key="notification.group.http.client"/>
    <notificationGroup id="http.generation.notifications" displayType="STICKY_BALLOON" bundle="messages.RestClientBundle"
                       key="notification.group.http.generation"/>

    <programRunner implementation="com.intellij.httpClient.http.request.debug.HttpRequestDebugRunner"/>
    <runAnything.executionProvider implementation="com.intellij.httpClient.http.request.run.HttpRequestRunAnythingProvider"/>

    <lang.inspectionSuppressor language="HTTP Request" implementationClass="com.intellij.httpClient.actions.generation.JsonInspectionSuppressor"/>

    <httpClient.whatsNewContentProvider
      implementation="com.intellij.httpClient.http.request.notification.HttpClientWhatsNewProviderImpl"/>

    <todoIndexer filetype="HTTP Request" implementationClass="com.intellij.httpClient.http.request.todo.HttpRequestTodoIndexer"/>
    <indexPatternBuilder implementation="com.intellij.httpClient.http.request.todo.HttpRequestIndexPatternBuilder"/>

    <intentionAction>
      <language>HTTP Request</language>
      <className>com.intellij.httpClient.http.request.refactoring.HttpMoveRequestsIntention</className>
      <!--suppress PluginXmlCapitalization -->
      <categoryKey>group.HTTPClientGroup.text</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>HTTP Request</language>
      <className>com.intellij.httpClient.http.request.codeInsight.HttpRequestConvertToCurlIntention</className>
      <!--suppress PluginXmlCapitalization -->
      <categoryKey>group.HTTPClientGroup.text</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>JSON</language>
      <className>com.intellij.httpClient.http.request.environment.codeinsight.HttpRequestEnvironmentSetSecuredValueIntention</className>
      <!--suppress PluginXmlCapitalization -->
      <categoryKey>group.HTTPClientGroup.text</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>HTTP Request</language>
      <className>com.intellij.httpClient.http.request.codeInsight.HttpClientSwitchEnvironmentIntention</className>
      <!--suppress PluginXmlCapitalization -->
      <categoryKey>group.HTTPClientGroup.text</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>HTTP Request</language>
      <className>com.intellij.httpClient.http.request.codeInsight.HttpRequestPutParametersOnSeparateLinesIntention</className>
      <!--suppress PluginXmlCapitalization -->
      <categoryKey>group.HTTPClientGroup.text</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>HTTP Request</language>
      <className>com.intellij.httpClient.http.request.codeInsight.HttpRequestPutParametersOnOneLineIntention</className>
      <!--suppress PluginXmlCapitalization -->
      <categoryKey>group.HTTPClientGroup.text</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>HTTP Request</language>
      <className>com.intellij.httpClient.http.request.codeInsight.HttpClientCreateTokenIntention</className>
      <!--suppress PluginXmlCapitalization -->
      <categoryKey>group.HTTPClientGroup.text</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>HTTP Request</language>
      <className>com.intellij.httpClient.http.request.codeInsight.HttpClientForceCreateTokenIntention</className>
      <!--suppress PluginXmlCapitalization -->
      <categoryKey>group.HTTPClientGroup.text</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>JSON</language>
      <className>com.intellij.httpClient.http.request.environment.codeinsight.HttpRequestEnvironmentAuthConfigIntention</className>
      <!--suppress PluginXmlCapitalization -->
      <categoryKey>group.HTTPClientGroup.text</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>JSON</language>
      <className>com.intellij.httpClient.http.request.environment.codeinsight.HttpRequestEnvironmentForceAuthConfigIntention</className>
      <!--suppress PluginXmlCapitalization -->
      <categoryKey>group.HTTPClientGroup.text</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>JSON</language>
      <className>com.intellij.httpClient.http.request.environment.codeinsight.HttpRequestEnvironmentClearBrowserCookiesIntention</className>
      <!--suppress PluginXmlCapitalization -->
      <categoryKey>group.HTTPClientGroup.text</categoryKey>
    </intentionAction>

    <!--suppress PluginXmlCapitalization -->
    <localInspection language="HTTP Request"
                     implementationClass="com.intellij.httpClient.http.request.codeInsight.HttpRequestPlaceholderInspection"
                     groupKey="group.HTTPClientGroup.text"
                     shortName="HttpRequestPlaceholder"
                     enabledByDefault="true"
                     key="http.request.placeholder.inspection.name"
                     bundle="messages.RestClientBundle"/>

    <!--suppress PluginXmlCapitalization -->
    <localInspection language="HTTP Request"
                     implementationClass="com.intellij.httpClient.http.request.codeInsight.HttpRequestContentLengthIsIgnoredInspection"
                     groupKey="group.HTTPClientGroup.text"
                     shortName="HttpRequestContentLengthIsIgnored"
                     enabledByDefault="true"
                     key="http.request.content.length.is.redundant.inspection.name"
                     bundle="messages.RestClientBundle"/>

    <!--suppress PluginXmlCapitalization -->
    <localInspection language="HTTP Request"
                     implementationClass="com.intellij.httpClient.http.request.codeInsight.HttpRequestIncorrectHttpHeaderInspection"
                     enabledByDefault="true"
                     shortName="IncorrectHttpHeaderInspection"
                     groupKey="group.HTTPClientGroup.text"
                     bundle="messages.RestClientBundle"
                     key="http.request.incorrect.http.header.inspection.name"/>

    <localInspection
      shortName="HttpUrlsUsage"
      implementationClass="com.intellij.httpClient.http.security.HttpUrlsUsageInspection"
      key="inspection.name"
      groupKey="inspection.group"
      enabledByDefault="true"
      level="WEAK WARNING"/>

    <!--suppress PluginXmlCapitalization -->
    <localInspection language="HTTP Request"
                     implementationClass="com.intellij.httpClient.http.request.codeInsight.HttpClientUnresolvedVariableInspection"
                     enabledByDefault="true"
                     groupKey="group.HTTPClientGroup.text"
                     shortName="HttpClientUnresolvedVariable"
                     key="http.client.unresolved.variable.inspection.name"
                     bundle="messages.RestClientBundle"/>

    <!--suppress PluginXmlCapitalization -->
    <localInspection language="HTTP Request"
                     implementationClass="com.intellij.httpClient.http.request.codeInsight.HttpRequestWhitespaceInsideRequestTargetPathInspection"
                     enabledByDefault="true"
                     groupKey="group.HTTPClientGroup.text"
                     shortName="HttpRequestWhitespaceInsideRequestTargetPath"
                     key="http.client.code.style.inspection.space.in.request.target.url.inspection.name"
                     level="WEAK WARNING"/>

    <!--suppress PluginXmlCapitalization -->
    <localInspection language="HTTP Request"
                     implementationClass="com.intellij.httpClient.http.request.codeInsight.HttpClientUnresolvedAuthIdInspection"
                     enabledByDefault="true"
                     groupKey="group.HTTPClientGroup.text"
                     shortName="HttpClientUnresolvedAuthId"
                     key="http.client.auth.unresolved.auth.id.inspection"
                     level="ERROR"/>

    <!--suppress PluginXmlCapitalization -->
    <localInspection language="yaml"
                     implementationClass="com.intellij.httpClient.http.request.codeInsight.HttpRequestRequestSeparatorYamlBodyInspection"
                     enabledByDefault="true"
                     groupKey="group.HTTPClientGroup.text"
                     shortName="HttpRequestRequestSeparatorYamlBodyInspection"
                     key="http.client.code.style.inspection.space.in.url.yaml.body.inspection.name"
                     level="WEAK WARNING"/>

    <!--suppress PluginXmlCapitalization -->
    <localInspection language="XML"
                     implementationClass="com.intellij.httpClient.http.request.codeInsight.HttpRequestRequestSeparatorXmlBodyInspection"
                     enabledByDefault="true"
                     groupKey="group.HTTPClientGroup.text"
                     shortName="HttpRequestRequestSeparatorXmlBodyInspection"
                     key="http.client.code.style.inspection.space.in.url.xml.body.inspection.name"
                     level="WEAK WARNING"/>
    
    <!--suppress PluginXmlCapitalization -->
    <localInspection language="JSON"
                     implementationClass="com.intellij.httpClient.http.request.codeInsight.HttpRequestRequestSeparatorJsonBodyInspection"
                     enabledByDefault="true"
                     groupKey="group.HTTPClientGroup.text"
                     shortName="HttpRequestRequestSeparatorJsonBodyInspection"
                     key="http.client.code.style.inspection.space.in.url.json.body.inspection.name"
                     level="WEAK WARNING"/>

    <!--suppress PluginXmlCapitalization -->
    <localInspection language="HTTP Request"
                     implementationClass="com.intellij.httpClient.http.request.codeInsight.HttpClientInappropriateProtocolUsageInspection"
                     enabledByDefault="true"
                     groupKey="group.HTTPClientGroup.text"
                     shortName="HttpClientInappropriateProtocolUsageInspection"
                     key="http.client.protocol.inspection.name"
                     level="WEAK WARNING"/>

    <!--suppress PluginXmlCapitalization -->
    <localInspection language="JSON"
                     implementationClass="com.intellij.httpClient.http.request.environment.codeinsight.HttpRequestEnvironmentAuthConfigurationValidationInspection"
                     enabledByDefault="true"
                     groupKey="group.HTTPClientGroup.text"
                     shortName="HttpRequestEnvironmentAuthConfigurationValidationInspection"
                     key="http.client.auth.config.validation.intention.name"
                     level="WARNING"/>

    <psi.referenceContributor language="HTTP Request"
                              implementation="com.intellij.httpClient.http.request.microservices.HttpRequestSegmentsReferenceContributor"/>
    <targetElementEvaluator language="HTTP Request"
                            implementationClass="com.intellij.httpClient.http.request.microservices.HttpRequestTargetElementEvaluator"/>
    <microservices.urlResolverFactory implementation="com.intellij.httpClient.http.request.microservices.RestClientUrlResolver$Factory"/>
    <microservices.endpointsSidePanelProvider
      implementation="com.intellij.httpClient.http.request.microservices.endpoints.HttpClientEndpointsSidePanel$Provider"/>
    <enterHandlerDelegate implementation="com.intellij.httpClient.http.request.microservices.endpoints.HttpClientTabEnterHandlerDelegate"
                          order="before HttpClientEnterHandler"/>
    <codeInsight.lineMarkerProvider language="HTTP Request"
                                    implementationClass="com.intellij.httpClient.http.request.microservices.endpoints.EmbeddedHttpClientEditorRunLineMarkerProvider"/>
    <annotator implementationClass="com.intellij.httpClient.http.request.microservices.endpoints.EmbeddedHttpClientEditorVariablesAnnotator"
               language="HTTP Request"/>

    <projectService serviceInterface="com.intellij.httpClient.http.request.environment.secrets.HttpRequestEnvironmentSecretsManager"
                    serviceImplementation="com.intellij.httpClient.http.request.environment.secrets.HttpRequestEnvironmentPasswordSafeSecretsManager"/>

    <codeInsight.lineMarkerProvider language="JSON"
                                    implementationClass="com.intellij.httpClient.http.request.environment.codeinsight.HttpRequestEnvironmentSetSecretLineMarkerProvider"/>

    <microservices.requestNavigator implementation="com.intellij.httpClient.http.request.microservices.RestClientRequestRunnerNavigator"/>
    <microservices.requestNavigator implementation="com.intellij.httpClient.http.request.microservices.RestClientRequestEditorNavigator"/>
    <gotoSymbolContributor implementation="com.intellij.httpClient.http.request.searcheverywhere.HttpRequestChooseByNameContributor"/>
    <applicationService serviceImplementation="com.intellij.httpClient.execution.HttpClientUserMimeTypeRegistry"/>
    <httpClient.responseCustomPresentation
      implementation="com.intellij.httpClient.http.request.run.console.presentations.HttpResponseRedirectsPresentation"/>
    <httpClient.responseCustomPresentation
      implementation="com.intellij.httpClient.http.request.run.console.presentations.HttpResponseContentTypePresentation"/>
    <httpClient.responseCustomPresentation
      implementation="com.intellij.httpClient.http.request.run.console.presentations.HttpResponseDisableCookiePresentation"/>
    <httpClient.responseCustomPresentation
      implementation="com.intellij.httpClient.http.request.run.console.presentations.HttpResponseFilePathPresentation"/>
    <registryKey defaultValue="true" description="Enables new UI for HTTP Client" key="http.client.toolbar.v2"/>
    <highlightingPassFactory implementation="com.intellij.httpClient.http.request.run.v2.HttpRequestRunLineMarkerV2Provider"/>
    <intentionMenuContributor implementation="com.intellij.httpClient.http.request.run.v2.HttpRequestIntentionMenuContributor"
                              order="first"/>

    <httpClient.requestExecutionSupport implementation="com.intellij.httpClient.executor.graphql.GraphQLClientRequestExecutionSupport"/>
    <httpClient.requestExecutionSupport implementation="com.intellij.httpClient.executor.websocket.WebSocketClientRequestExecutionSupport"/>

    <editorNotificationProvider implementation="com.intellij.httpClient.graphql.notification.HttpClientGraphQLPluginAdvertisement"/>
    <registryKey defaultValue="false" description="Promote graphQL plugin for HTTP client" key="http.client.promote.jsgraphql.plugin"/>
    <intentionAction>
      <language>HTTP Request</language>
      <className>com.intellij.httpClient.graphql.codeInsight.HttpClientGraphQLAddVariablesJsonIntention</className>
      <!--suppress PluginXmlCapitalization -->
      <categoryKey>group.HTTPClientGroup.text</categoryKey>
    </intentionAction>
    <httpRequestHandler implementation="com.intellij.httpClient.examples.server.HttpClientExamplesServer"/>

    <enterHandlerDelegate implementation="com.intellij.httpClient.http.request.editor.HttpRequestUrlEnterHandler"
                          id="HttpClientEnterHandler"/>
    <joinLinesHandler implementation="com.intellij.httpClient.http.request.editor.HttpRequestUrlJoinLinesHandlerDelegate"/>

    <applicationService
      serviceImplementation="com.intellij.httpClient.http.request.HttpRequestVariableSubstitutorImpl$FactoryImpl"
      serviceInterface="com.intellij.httpClient.http.request.substitutor.HttpRequestVariableSubstitutorFactory"/>

    <applicationService serviceImplementation="com.intellij.httpClient.http.request.psi.ide.HttpRequestPsiDistributionDetailsServiceImpl"
                        serviceInterface="com.intellij.httpClient.http.request.psi.HttpRequestPsiDistributionDetailsService"/>
    <applicationService
      serviceImplementation="com.intellij.httpClient.http.request.lexer.HttpRequestLexerDistributionDetailsServiceImpl"
      serviceInterface="com.intellij.httpClient.http.request.lexer.HttpRequestLexerDistributionDetailsService"/>
    <applicationService
      serviceImplementation="com.intellij.httpClient.http.request.environment.impl.HttpRequestEnvironmentDistDetailsServiceImpl"
      serviceInterface="com.intellij.httpClient.http.request.environment.HttpRequestEnvironmentDistDetailsService"/>
    <applicationService
      serviceImplementation="com.intellij.httpClient.http.request.run.impl.HttpRequestExecutionHelperServiceImpl"
      serviceInterface="com.intellij.httpClient.http.request.run.HttpRequestExecutionHelperService"/>
    <projectService serviceInterface="com.intellij.httpClient.executor.util.json.HttpClientJsonService"
                    serviceImplementation="com.intellij.httpClient.util.json.HttpClientPsiBasedJsonService"/>
    <httpClient.dynamicVariablesProvider
      implementation="com.intellij.httpClient.http.request.dynamicVariables.ide.HttpClientDynamicVariablesFromIdeProvider"/>
    <iconMapper mappingFile="RestIconMappings.json"/>
    <fileEditorProvider
      id="html-preview-editor-provider"
      implementation="com.intellij.httpClient.http.request.run.console.HttpSingleResponseConsole$HtmlPreviewFileEditorProvider" fileType="HTML"
    />

    <projectService serviceImplementation="com.intellij.httpClient.http.request.ide.HttpClientFileVariableStorageImpl"
                    serviceInterface="com.intellij.httpClient.http.request.variables.HttpClientFileVariableStorage"/>
    <annotator language="HTTP Request"
               implementationClass="com.intellij.httpClient.http.request.highlighting.HttpClientAdditionalSyntaxAnnotator"/>
    <annotator language="HTTP Request"
               implementationClass="com.intellij.httpClient.http.request.highlighting.HttpClientAdditionalNonDumbAwareSyntaxAnnotator"/>
    <annotator language="HTTP Request"
               implementationClass="com.intellij.httpClient.http.request.highlighting.HttpClientRequestSyntaxAnnotator"/>
    <codeInsight.lineMarkerProvider
      implementationClass="com.intellij.httpClient.http.request.codeInsight.HttpClientOverrideLineMarkerProvider"
      language="HTTP Request"/>
    <registryKey defaultValue="true"
                 description="Enables file variables (@variables) in HTTP Client"
                 key="http.client.file.variables.available"
                 restartRequired="true"/>

    <codeInsight.lineMarkerProvider implementationClass="com.intellij.httpClient.http.request.environment.codeinsight.HttpRequestEnvironmentAuthConfigLineMarkerProvider"
                                    language="JSON"/>

    <fileType name="JSON"
              extensions="postman_collection;postman_collection.json;postman_environment;postman_environment.json"/>
    <webHelpProvider implementation="com.intellij.httpClient.postman.converter.listener.PostmanWebHelpProvider"/>
    <advancedSetting id="http.client.history.size" default="50"/>
    <platform.backend.documentation.targetProvider implementation="com.intellij.httpClient.http.request.documentation.protocols.HttpProtocolDocumentationProvider"/>
  </extensions>

  <applicationListeners>
    <listener class="com.intellij.httpClient.http.request.run.v2.HttpRequestRunLineMarkerV2LafListener"
              topic="com.intellij.ide.ui.LafManagerListener"/>
  </applicationListeners>

  <extensions defaultExtensionNs="JavaScript.JsonSchema">
    <ProviderFactory implementation="com.intellij.httpClient.http.request.environment.HttpRequestEnvironmentJsonSchemaProviderFactory"/>
    <ContentAwareSchemaFileProvider implementation="com.intellij.httpClient.http.request.microservices.RestClientM8SJsonSchemaProvider"/>
  </extensions>

  <applicationListeners>
    <listener class="com.intellij.httpClient.http.request.run.HttpRequestGlobalContext$HttpRequestGlobalContextProjectListener"
              topic="com.intellij.openapi.project.ProjectCloseListener"/>
  </applicationListeners>
  <actions>
    <group id="HTTPClientGroup" popup="true">
      <action class="com.intellij.httpClient.actions.NewHttpRequestInToolMenuAction" id="HTTPClient.NewRequestInToolMenuAction">
        <synonym key="action.HTTPClient.NewRequestInToolMenuAction.synonym.text"/>
      </action>
      <action class="com.intellij.httpClient.actions.HttpRequestOpenCollectionAction" id="HTTPClient.OpenCollection">
        <override-text place="HttpClient.NotificationPanel"/>
      </action>
      <action class="com.intellij.httpClient.actions.HttpRequestShowHistoryAction" id="RESTClient.ShowHistory"/>
      <add-to-group group-id="ToolsMenu"/>
    </group>
    <action class="com.intellij.httpClient.converters.legacy.LegacyRestClientFileToNewAction" id="RESTClient.ConvertToNew"
            icon="com.intellij.httpClient.RestClientIcons.Http_requests_filetype">
      <add-to-group group-id="ProjectViewPopupMenuRefactoringGroup"/>
    </action>
    <action id="HTTP.Request.NewFile" class="com.intellij.httpClient.http.request.actions.NewHttpRequestFileAction"
            icon="com.intellij.httpClient.RestClientIcons.Http_requests_filetype">
      <add-to-group group-id="NewMicroservices"/>
    </action>
    <group id="HTTPClientNewEnvironmentFile" icon="AllIcons.FileTypes.Json"
           class="com.intellij.httpClient.actions.environment.HttpRequestNewEnvironmentFileGroup">
      <!--suppress PluginXmlCapitalization -->
      <action id="NewPublicEnvironmentFile"
              class="com.intellij.httpClient.actions.environment.HttpRequestNewPublicEnvironmentFileAction"
              icon="AllIcons.FileTypes.Json">
        <!--suppress PluginXmlCapitalization -->
        <override-text place="popup@HttpClient.NotificationPanel"/>
      </action>
      <!--suppress PluginXmlCapitalization -->
      <action id="NewPrivateEnvironmentFile"
              class="com.intellij.httpClient.actions.environment.HttpRequestNewPrivateEnvironmentFileAction"
              icon="AllIcons.FileTypes.Json">
        <!--suppress PluginXmlCapitalization -->
        <override-text place="popup@HttpClient.NotificationPanel"/>
      </action>
    </group>
    <group id="HTTPClient.Convert" class="com.intellij.httpClient.actions.HttpRequestConvertGroup" popup="true">
      <!--suppress PluginXmlCapitalization -->
      <action id="com.intellij.httpClient.actions.ConvertCurlToHttpRequestAction"
              class="com.intellij.httpClient.actions.ConvertCurlToHttpRequestAction">
        <add-to-group group-id="HTTPClientGroup" anchor="last"/>
        <!--suppress PluginXmlCapitalization -->
        <override-text place="popup@HttpClientConvertPopupV2"/>
      </action>
      <action class="com.intellij.httpClient.converters.legacy.LegacyRestClientRequestFromExternalFilesAction"
              id="RESTClient.RequestFromLegacyFiles">
        <override-text place="popup@HttpClientConvertPopupV2"/>
      </action>
    </group>
    <action class="com.intellij.httpClient.actions.AddHttpRequestAction" id="HTTPClient.AddRequest"/>
    <action class="com.intellij.httpClient.actions.HttpRequestRunFileAction" id="HTTPClient.RunAll">
    </action>

    <!--suppress PluginXmlCapitalization -->
    <action class="com.intellij.httpClient.actions.copyPaste.HttpRequestCopyAsCurlAction" id="HTTPClientConvertToCurlAndCopy">
      <add-to-group group-id="CutCopyPasteGroup" anchor="last"/>
      <add-to-group group-id="Copy.Paste.Special" anchor="last"/>
      <add-to-group group-id="HTTPClient.Convert"/>
      <!--suppress PluginXmlCapitalization -->
      <override-text place="popup@HttpClientConvertPopup"/>
    </action>
    <action id="HTTPClient.CopyResponseBody"
            class="com.intellij.httpClient.http.request.run.console.HttpSingleResponseConsole$HttpRequestCopyResponseBodyAction"
            icon="AllIcons.Actions.Copy"
    >
      <add-to-group group-id="ConsoleView.PopupMenu"/>
    </action>
    <action id="HTTPClient.Preview"
            icon="AllIcons.General.LayoutPreviewOnly"
            class="com.intellij.httpClient.http.request.run.console.HttpSingleResponseConsole$HttpRequestPreviewAction">
      <add-to-group group-id="ConsoleView.PopupMenu"/>
    </action>
    <action id="HTTPClient.PreviewHtml.NavigateForward"
            class="com.intellij.httpClient.http.request.run.console.editor.HtmlPreviewNavigateForwardAction"
            icon="AllIcons.General.ArrowRight"
            use-shortcut-of="EditorRight">
    </action>
    <action id="HTTPClient.PreviewHtml.NavigateBack"
            class="com.intellij.httpClient.http.request.run.console.editor.HtmlPreviewNavigateBackAction"
            icon="AllIcons.General.ArrowLeft"
            use-shortcut-of="EditorLeft">
    </action>
    <action id="HTTPClient.PreviewHtml.OpenDevTools"
            text="Open Dev Tools"
            class="com.intellij.httpClient.http.request.run.console.editor.HtmlPreviewOpenDevToolsAction"
            icon="AllIcons.Debugger.Console"
            internal="true">
    </action>
    <action id="HTTPClient.Preview.InlinePdf"
            class="com.intellij.httpClient.http.request.run.console.HttpSingleResponseConsole$MyEditorToggleInlinePdfAction">
    </action>
    <group id="HttpClient.Add" class="com.intellij.httpClient.actions.HttpClientAddAction" icon="AllIcons.General.Add" popup="true">
      <action class="com.intellij.httpClient.actions.HttpClientAddVariableAction$Public" id="HttpClient.Add.Public.Variable"/>
      <action class="com.intellij.httpClient.actions.HttpClientAddVariableAction$Private" id="HttpClient.Add.Private.Variable"/>
      <action class="com.intellij.httpClient.actions.HttpClientAddAuthConfigurationAction" id="HttpClient.Add.AuthConfig"/>
      <add-to-group group-id="HTTPClientGroup"/>
    </group>
    <action class="com.intellij.httpClient.postman.converter.action.ConvertPostmanEnvironmentToHttpFileFromProjectViewAction"
            id="com.intellij.httpClient.postman.converter.action.ConvertPostmanEnvironmentToHttpFileFromProjectViewAction"
            icon="com.intellij.httpClient.RestClientIcons.Http_requests_filetype">
      <add-to-group group-id="ProjectViewPopupMenu" anchor="first"/>
    </action>
    <action class="com.intellij.httpClient.postman.converter.action.ConvertPostmanCollectionToHttpFileFromProjectViewAction"
            id="com.intellij.httpClient.postman.converter.action.ConvertPostmanCollectionToHttpFileFromProjectViewAction"
            icon="com.intellij.httpClient.RestClientIcons.Http_requests_filetype">
      <add-to-group group-id="ProjectViewPopupMenu" anchor="first"/>
    </action>
    <action class="com.intellij.httpClient.postman.converter.action.ConvertPostmanToHttpFileAction"
            id="com.intellij.httpClient.postman.converter.action.ConvertPostmanToHttpFileAction">
      <add-to-group group-id="HTTPClient.Convert" anchor="first"/>
      <add-to-group group-id="HTTPClientGroup" anchor="last"/>
      <override-text place="popup@HttpClientConvertPopupV2"/>
    </action>
    <action class="com.intellij.httpClient.http.request.run.test.HttpMultiResponseConsoleCopyUrlAction"
            id="HTTPClient.CopyUrl.MultiResponseConsole"
            icon="AllIcons.Actions.Copy">
      <add-to-group group-id="TestTreePopupMenu" anchor="last"/>
    </action>
    <group id="HTTPClient.Toolbar.ProvidedActions"/>
      <action id="HTTPClient.ClearBrowserCookies"
              class="com.intellij.httpClient.http.request.authentication.ClearAuthBrowserCookiesAction"
              icon="AllIcons.Actions.GC"/>
  </actions>
</idea-plugin> lib/restClient.jar  rml-dfa-plugin  G<idea-plugin implementation-detail="true">
  <id>com.intellij.rml.dfa</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>Relational Dataflow Analysis</name>
  <description><![CDATA[API, implementation and debug tool-window for RML dataflow analysis]]></description>
  <vendor>JetBrains</vendor>
  <content>
    <module name="intellij.rml.dfa"/>
    <module name="intellij.rml.dfa.impl"/>
    <module name="intellij.rml.dfa.devtools"/>
    <module name="intellij.rml.dfa.devtools.impl"/>
  </content>
</idea-plugin>
 lib/rml-dfa-plugin.jar  searchEverywhereMl  
<idea-plugin package="com.intellij.searchEverywhereMl">
  <id>com.intellij.searcheverywhere.ml</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>Machine Learning in Search Everywhere</name>
  <vendor>JetBrains</vendor>
  <category>Local AI/ML Tools</category>

  <description><![CDATA[
    <p>The plugin improves the Search Everywhere feature by ordering the search results using machine learning,
    making more relevant results appear higher up the list.
    </p>
    <br>
    <i>Machine learning ranking is currently available and switched on by default for the Classes, Files, and Actions tabs.
    As an experiment, some portion of users will also have it enabled in the All tab.</i>
  ]]></description>

  <content>
    <module name="intellij.searchEverywhereMl.typos"/>
    <module name="intellij.searchEverywhereMl.ranking.ext"/>
    <module name="intellij.searchEverywhereMl.ranking.core"/>
    <module name="intellij.searchEverywhereMl.ranking.yaml"/>
    <module name="intellij.searchEverywhereMl.ranking.vcs"/>
    <module name="intellij.searchEverywhereMl.semantics"/>
    <module name="intellij.searchEverywhereMl.semantics.java"/>
    <module name="intellij.searchEverywhereMl.semantics.kotlin"/>
    <module name="intellij.searchEverywhereMl.semantics.testCommands"/>
  </content>

  <resource-bundle>messages.searchEverywhereMlCoreBundle</resource-bundle>

  <extensions defaultExtensionNs="com.intellij">
    <advancedSetting default="true" id="searcheverywhere.ml.sort.action"
                     groupKey="advanced.setting.searcheverywhere.ml.name"
                     bundle="messages.searchEverywhereMlCoreBundle"/>
    <advancedSetting default="true" id="searcheverywhere.ml.sort.files"
                     groupKey="advanced.setting.searcheverywhere.ml.name"
                     bundle="messages.searchEverywhereMlCoreBundle"/>
    <advancedSetting default="true" id="searcheverywhere.ml.sort.classes"
                     groupKey="advanced.setting.searcheverywhere.ml.name"
                     bundle="messages.searchEverywhereMlCoreBundle"/>
    <advancedSetting default="false" id="searcheverywhere.ml.sort.all"
                     groupKey="advanced.setting.searcheverywhere.ml.name"
                     bundle="messages.searchEverywhereMlCoreBundle"
                     service="com.intellij.searchEverywhereMl.settings.SearchEverywhereMlSettingsStorage"
                     property="enableMlRankingInAll"/>

    <searchEverywhereMlService implementation="com.intellij.searchEverywhereMl.SearchEverywhereMlServiceImpl"/>
    <statistic.eventLog.eventLoggerProvider
      implementation="com.intellij.searchEverywhereMl.SearchEverywhereEventLoggerProvider"
      order="first"/>
  </extensions>

  <extensionPoints>
    <extensionPoint qualifiedName="com.intellij.searchEverywhereMl.searchEverywhereSessionPropertyProvider"
                    interface="com.intellij.searchEverywhereMl.SearchEverywhereSessionPropertyProvider"
                    dynamic="true"/>
    <extensionPoint qualifiedName="com.intellij.searchEverywhereMl.rankingService"
                    interface="com.intellij.ide.actions.searcheverywhere.SearchEverywhereMlService"
                    dynamic="true"/>

    <extensionPoint qualifiedName="com.intellij.searchEverywhereMl.itemSelectedListener"
                    interface="com.intellij.searchEverywhereMl.SearchEverywhereItemSelectedListener"
                    dynamic="true"/>
  </extensionPoints>
</idea-plugin> lib/searchEverywhereMl.jar  settingsSync  G<idea-plugin>
  <name>Settings Sync</name>
  <id>com.intellij.settingsSync</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <category>IDE Settings</category>
  <description><![CDATA[
    <p>Synchronizes settings across all JetBrains IDE instances using your JetBrains account.
    The list of synced settings is customizable and includes UI, keymaps, code style, plugins, and much more.</p>
  ]]></description>
  <vendor>JetBrains</vendor>
  <resource-bundle>messages.SettingsSyncBundle</resource-bundle>

  <content>
    <module name="intellij.settingsSync.git"/>
  </content>

  <depends>com.intellij.modules.platform</depends>
  <depends optional="true" config-file="settingsSync-performance-plugin-support.xml">com.jetbrains.performancePlugin</depends>

  <extensions defaultExtensionNs="com.intellij">
    <applicationService serviceImplementation="com.intellij.settingsSync.SettingsSyncSettings"/>
    <applicationService serviceImplementation="com.intellij.settingsSync.notification.NotificationServiceImpl"
                        serviceInterface="com.intellij.settingsSync.notification.NotificationService"/>
    <!--suppress PluginXmlDynamicPlugin -->
    <applicationInitializedListener implementation="com.intellij.settingsSync.SettingsSynchronizerApplicationInitializedListener"/>
    <applicationConfigurable id="settings.sync"
                             key="title.settings.sync"
                             bundle="messages.SettingsSyncBundle"
                             provider="com.intellij.settingsSync.config.SettingsSyncConfigurableProvider"
                             groupId="root"
                             groupWeight="5"/>
    <applicationService serviceInterface="com.intellij.settingsSync.auth.SettingsSyncAuthService"
                        serviceImplementation="com.intellij.settingsSync.auth.SettingsSyncDefaultAuthService"
                        testServiceImplementation="com.intellij.settingsSync.SettingsSyncTestAuthService"/>
    <applicationService serviceInterface="com.intellij.settingsSync.plugins.PluginManagerProxy"
                        serviceImplementation="com.intellij.settingsSync.plugins.CorePluginManagerProxy"/>
    <notificationGroup displayType="STICKY_BALLOON" id="settingsSync.errors"
                       bundle="messages.SettingsSyncBundle" key="settingsSync.errors.notificationGroup"/>

    <registryKey key="settingsSync.autoSync.on.focus" defaultValue="true"
                 description="Settings will be automatically synced when the application receives the focus"/>
    <registryKey key="settingsSync.autoSync.frequency.sec" defaultValue="3600"
                 description="Settings will be automatically synced with the server every N seconds.
                              Settings the value to 0 or less disables syncing by timer."/>
    <registryKey key="settingsSync.promotion.in.settings" defaultValue="false"
                 description="Whether to show GotIt tooltip with promotion to enable the Settings Sync
                              on Apply button click in the Settings dialog"/>

    <settingsEntryPointIconCustomizer implementation="com.intellij.settingsSync.config.SettingsSyncStatusAction$IconCustomizer"/>
    <statistics.applicationUsagesCollector implementation="com.intellij.settingsSync.statistics.SettingsSyncStateStatistics"/>
    <statistics.counterUsagesCollector implementationClass="com.intellij.settingsSync.statistics.SettingsSyncEventsStatistics"/>
    <iconMapper mappingFile="SettingsSyncIconMappings.json"/>

    </extensions>

  <applicationListeners>
    <listener class="com.intellij.settingsSync.SettingsSynchronizer" topic="com.intellij.openapi.application.ApplicationActivationListener"
              activeInTestMode="false" activeInHeadlessMode="false"/>
    <listener class="com.intellij.settingsSync.SettingsSyncPromotion" topic="com.intellij.openapi.options.newEditor.SettingsDialogListener"
              activeInTestMode="false" activeInHeadlessMode="false"/>
  </applicationListeners>

  <extensionPoints>
    <extensionPoint qualifiedName="com.intellij.settingsSyncMigration" interface="com.intellij.settingsSync.SettingsSyncMigration" dynamic="true"/>
    <extensionPoint interface="com.intellij.settingsSync.SettingsProvider" dynamic="true" name="settingsProvider"/>
  </extensionPoints>

  <actions>
    <group id="SettingsSync">
      <action class="com.intellij.settingsSync.ManualPushAction" id="settingsSync.manualPush" icon="AllIcons.Chooser.Top" internal="true"/>
      <action class="com.intellij.settingsSync.SettingsSyncTroubleshootingAction" id="settingsSync.troubleShoot"
              icon="AllIcons.General.Settings"/>
    </group>

    <action id="SettingsSyncSeparator" class="com.intellij.openapi.actionSystem.Separator">
      <add-to-group group-id="SettingsEntryPointGroup" anchor="after" relative-to-action="WelcomeScreen.Plugins"/>
    </action>

    <action id="SettingsSyncStatusAction" class="com.intellij.settingsSync.config.SettingsSyncStatusAction">
      <add-to-group group-id="SettingsEntryPointGroup" anchor="after" relative-to-action="SettingsSyncSeparator"/>
    </action>

    <action id="SettingsSyncOpenSettingsAction" class="com.intellij.settingsSync.config.SettingsSyncOpenSettingsAction$Simple">
      <add-to-group group-id="ExportImportGroup" anchor="last"/>
    </action>
  </actions>

</idea-plugin>
 lib/settingsSync.jar  sh  L<idea-plugin xmlns:xi="http://www.w3.org/2001/XInclude" package="com.intellij.sh">
  <id>com.jetbrains.sh</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <vendor>JetBrains</vendor>
  <name>Shell Script</name>
  <category>Languages</category>

  <content>
    <module name="intellij.sh.terminal"/>
    <module name="intellij.sh.copyright"/>
    <module name="intellij.sh.markdown"/>
    <module name="intellij.sh.python"/>
  </content>
  <dependencies>
    <plugin id="com.intellij.modules.lang"/>
  </dependencies>

  <description><![CDATA[
Adds support for working with shell script files

<ul><li>Coding assistance: code completion, quick documentation, code refactorings, etc.</li>
<li>Dedicated run/debug configuration for shell scripts</li>
<li>Integration with external tools (<a href="https://github.com/koalaman/shellcheck">ShellCheck</a>, <a href="https://github.com/mvdan/sh">Shfmt</a>, <a href="https://explainshell.com/">Explainshell</a>)
</li></ul>]]></description>

  <xi:include href="/META-INF/sh.xml"/>
</idea-plugin>
 
lib/sh.jar  	stylelint  C<idea-plugin package="com.intellij.stylelint">
  <name>Stylelint</name>
  <id>com.intellij.stylelint</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <category>JavaScript Frameworks and Tools</category>
  <vendor>JetBrains</vendor>
  <description><![CDATA[
    <p>Provides <a href="https://stylelint.io/">Stylelint</a> support to all JetBrains IDEs that
    <a href="https://www.jetbrains.com/products/#lang=js&type=ide">support JavaScript</a>.

    <h2>Features</h2>
    <ul>
      <li>CSS code inspection according to Stylelint rules
      <li>Quick fix for fixing problems automatically where possible
      <li>Option to lint CSS-like languages like SCSS, Sass, or Less
    </ul>

    <h2>Getting started</h2>
    <p>For information on getting started, head over to the <a href="https://www.jetbrains.com/help/">documentation</a> for your IDE.
      For WebStorm, you can check out this section in the
      <a href="https://www.jetbrains.com/help/webstorm/using-stylelint-code-quality-tool.html">documentation</a>.
  ]]></description>
  <dependencies>
    <plugin id="JavaScript"/>
    <plugin id="com.intellij.css"/>
  </dependencies>

  <extensions defaultExtensionNs="com.intellij.JavaScript">
    <linter.descriptor implementation="com.intellij.stylelint.StylelintLinterDescriptor"/>
  </extensions>

  <extensions defaultExtensionNs="com.intellij">
    <projectConfigurable id="configurable.stylesheets.stylelint"
                         parentId="configurable.stylesheets"
                         instance="com.intellij.stylelint.StylelintConfigurable"
                         key="stylelint.configurable.name"
                         bundle="messages.StylelintBundle"
                         order="last"/>
    <localInspection language="CSS"
                     bundle="messages.StylelintBundle"
                     key="stylelint.inspection"
                     groupBundle="messages.CssBundle"
                     groupKey="css.inspections.code.quality.tools.group"
                     groupPath="CSS"
                     enabledByDefault="false"
                     level="ERROR"
                     implementationClass="com.intellij.stylelint.StylelintInspection"
                     unfair="true"/>
    <externalAnnotator language="CSS" implementationClass="com.intellij.stylelint.StylelintExternalAnnotator"/>
    <externalAnnotator language="HTML" implementationClass="com.intellij.stylelint.StylelintExternalAnnotator"/>
    <externalAnnotator language="JavaScript" implementationClass="com.intellij.stylelint.StylelintExternalAnnotator"/>
    <projectService serviceImplementation="com.intellij.stylelint.StylelintConfiguration"/>
    <projectService serviceImplementation="com.intellij.stylelint.config.StylelintConfigFileChangeTracker"/>
    <projectService serviceImplementation="com.intellij.stylelint.config.StylelintUnsavedConfigFileManager"/>
    <lang.substitutor language="JSON" implementationClass="com.intellij.stylelint.config.StylelintConfigLangSubstitutor"/>
    <fileType name="JSON" fileNames=".stylelintrc"/>
    <iconProvider implementation="com.intellij.stylelint.config.StylelintConfigIconProvider"/>
    <actionOnSaveInfoProvider id="StylelintOnSaveInfoProvider"
                              implementation="com.intellij.stylelint.onSave.StylelintOnSaveInfoProvider"
                              order="after FormatOnSaveInfoProvider, before EsLintOnSaveInfoProvider, before PrettierOnSaveInfoProvider, before BuildOnSaveInfoProvider, before FileWatcherOnSaveInfoProvider, before UploadOnSaveInfoProvider"/>
    <actionOnSave id="StylelintOnSaveAction"
                  implementation="com.intellij.stylelint.onSave.StylelintOnSaveAction"
                  order="after FormatOnSaveAction, before ESLintActionOnSave, before PrettierActionOnSave"/>
  </extensions>

  <actions>
    <action id="Stylelint.Fix"
            class="com.intellij.stylelint.StylelintFixAction"
            icon="JavaScriptLanguageIcons.FileTypes.Stylelint">
      <add-to-group group-id="EditorPopupMenu" anchor="last"/>
    </action>
  </actions>
</idea-plugin>
 lib/stylelint.jar  swagger  A_<idea-plugin package="com.intellij.swagger">
  <name>OpenAPI Specifications</name>
  <id>com.intellij.swagger</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <category>Microservices</category>
  <vendor>JetBrains</vendor>

  <description><![CDATA[
    <a href="https://www.openapis.org/">OpenAPI</a> and Swagger specification files support.
    <p>
    <p>
      Features:
    <ul>
      <li>OpenAPI 3, Swagger 2 and AsyncAPI 2 versions.</li>
      <li>YAML and JSON file formats.</li>
      <li>Validation by JSON Schema.</li>
      <li>Navigation, completion and rename refactoring for URLs.</li>
      <li>Code generation with Swagger Codegen and OpenAPI Generator.</li>
      <li>Integrated Swagger UI/Redoc previews in the specification editor.</li>
      <li>Structural diff action for specifications.</li>
      <li>URL completion in HTTP Client by specifications.</li>
      <li>Structure view for OpenAPI files.</li>
      <li>Remote specifications via URL or from Swagger Hub.</li>
    </ul>
  ]]></description>

  <dependencies>
    <plugin id="com.intellij.modules.ultimate"/>
    <plugin id="com.intellij.modules.microservices"/>
    <plugin id="org.jetbrains.plugins.yaml"/>
    <plugin id="com.intellij.modules.json"/>
    <plugin id="org.intellij.plugins.markdown"/>
    <plugin id="com.jetbrains.restClient"/>
  </dependencies>

  <content>
    <module name="intellij.swagger.java"/>
    <module name="intellij.swagger.maven"/>
    <module name="intellij.swagger.gradle"/>
    <module name="intellij.swagger.endpoints"/>
  </content>

  <resource-bundle>messages.SwaggerBundle</resource-bundle>

  <actions>
    <action id="CreateOpenapiSpecification" class="com.intellij.swagger.core.actions.CreateOpenapiSpecificationFromTemplateAction"
            icon="icons.MicroservicesIcons.Oas.Openapi">
      <add-to-group group-id="NewMicroservices"/>
    </action>
    <action id="ComputeSwaggerDiffBetweenPhysicalFiles"
            class="com.intellij.swagger.core.diff.actions.ComputeDiffBetweenPhysicalFilesAction"
            icon="com.intellij.swagger.core.SwaggerCoreIcons.OpenapiDiff">
      <add-to-group group-id="ProjectViewPopupMenu" relative-to-action="CompareFileWithEditor" anchor="after"/>
    </action>
    <action id="ComputeDiffWithPreviousRevisionAction"
            class="com.intellij.swagger.core.diff.actions.ComputeDiffWithPreviousRevisionAction"
            icon="com.intellij.swagger.core.SwaggerCoreIcons.OpenapiDiff">
      <add-to-group group-id="EditorPopupMenu" relative-to-action="CompareClipboardWithSelection" anchor="after"/>
      <add-to-group group-id="ProjectViewPopupMenu" relative-to-action="CompareFileWithEditor" anchor="after"/>
    </action>
    <action id="DumpOasModel" class="com.intellij.swagger.core.synthetic.DumpOasModelAction" internal="true">
      <add-to-group group-id="Internal.Dump"/>
    </action>
    <action id="SwGenerateYamlSelfContainedSpecificationAction"
            class="com.intellij.swagger.core.actions.SwGenerateYamlSelfContainedSpecificationAction"
            icon="MicroservicesIcons.Oas.Openapi">
      <add-to-group group-id="EditorPopupMenu" anchor="last"/>
    </action>
    <action id="SwGenerateJsonSelfContainedSpecificationAction"
            class="com.intellij.swagger.core.actions.SwGenerateJsonSelfContainedSpecificationAction"
            icon="MicroservicesIcons.Oas.Openapi">
      <add-to-group group-id="EditorPopupMenu" anchor="before" relative-to-action="SwGenerateYamlSelfContainedSpecificationAction"/>
    </action>
    <action class="com.intellij.swagger.core.actions.SwCopyJsonSchemaCoordinatesAction"
            icon="MicroservicesIcons.Oas.Openapi"
            text="Copy JSON Schema Meta">
      <add-to-group group-id="EditorPopupMenu" anchor="last"/>
    </action>
    <action class="com.intellij.swagger.core.actions.SwOpenJsonSchemaAction"
            icon="MicroservicesIcons.Oas.Openapi"
            text="Open Composed JSON Schema">
      <add-to-group group-id="EditorPopupMenu" anchor="last"/>
    </action>
    <action class="com.intellij.swagger.core.actions.SwOpenInjectedJsonSchemaAction"
            icon="MicroservicesIcons.Oas.Openapi"
            text="Open JSON Schema for Injected File">
      <add-to-group group-id="EditorPopupMenu" anchor="last"/>
    </action>
    <group id="SwEditorHoverActions">
      <action id="SwDynamicSwitchPreviewProviderAction"
              class="com.intellij.swagger.core.ui.actions.SwDynamicSwitchPreviewProviderAction"
              icon="AllIcons.Actions.Properties"/>
      <action id="SwEditorOpenDevToolsAction"
              text="Open Dev Tools"
              internal="true"
              class="com.intellij.swagger.core.ui.actions.SwEditorOpenDevToolsAction"
              icon="AllIcons.Debugger.Console"/>
      <action id="SwEditorReloadPageAction"
              class="com.intellij.swagger.core.ui.actions.SwEditorReloadPageAction"
              icon="AllIcons.Actions.Refresh"/>
      <action id="SwEditorAutoScrollPreviewToggleAction"
              class="com.intellij.swagger.core.ui.actions.SwEditorAutoScrollPreviewToggleAction"
              icon="AllIcons.Actions.SynchronizeScrolling"/>
    </group>
    <group id="swagger.GutterGenerateActions">
      <separator/>
    </group>
  </actions>

  <extensions defaultExtensionNs="com.intellij">
    <registryKey defaultValue="1000"
                 description="Maximum allowed text length for a single OpenAPI definition to be included into the http request body schema"
                 key="definition.for.schema.length.limit"
                 restartRequired="true"/>

    <projectService serviceInterface="com.intellij.swagger.core.visualEditing.SwVisualEditingActionsService"
                        serviceImplementation="com.intellij.swagger.core.visualEditing.SwVisualEditingActionsService"
                        testServiceImplementation="com.intellij.swagger.visualEditing.SwVisualEditingActionsTestService"/>
    <runLineMarkerContributor language="yaml" implementationClass="com.intellij.swagger.core.providers.SwRunLineMarkerProvider"/>
    <runLineMarkerContributor language="JSON" implementationClass="com.intellij.swagger.core.providers.SwRunLineMarkerProvider"/>

    <intentionAction>
      <language>yaml</language>
      <className>com.intellij.swagger.core.intentions.SwExtractModelDeclarationIntention</className>
      <bundleName>messages.SwaggerBundle</bundleName>
      <categoryKey>intention.extract.model.declaration.category</categoryKey>
    </intentionAction>

    <configurationType implementation="com.intellij.swagger.core.codegen.SwaggerCodegenConfigurationType"/>
    <runConfigurationProducer implementation="com.intellij.swagger.core.codegen.SwaggerCodegenRunConfigurationProducer"/>

    <iconProvider implementation="com.intellij.swagger.core.providers.SwFileIconProvider"/>

    <liveTemplateContext contextId="GENERAL_JSON_FILE" implementation="com.intellij.swagger.core.providers.SwJsonLiveTemplateContextType"/>
    <liveTemplateContext contextId="GENERAL_YAML_FILE" implementation="com.intellij.swagger.core.providers.SwYamlLiveTemplateContextType"/>
    <liveTemplateContext contextId="ANY_OPENAPI_YAML_FILE"
                         implementation="com.intellij.swagger.core.providers.SwSpecificationYamlLiveTemplateContextType"/>
    <liveTemplateContext contextId="ANY_OPENAPI_JSON_FILE"
                         implementation="com.intellij.swagger.core.providers.SwSpecificationJsonLiveTemplateContextType"/>
    <defaultLiveTemplates file="liveTemplates/OpenAPI Specifications (.yaml).xml"/>
    <defaultLiveTemplates file="liveTemplates/OpenAPI Specifications (.json).xml"/>

    <completion.contributor language="yaml"
                            implementationClass="com.intellij.swagger.core.reference.definitions.completion.SwYamlObjectDefinitionCompletionContributor"/>
    <completion.contributor language="JSON"
                            implementationClass="com.intellij.swagger.core.reference.definitions.completion.SwJsonObjectDefinitionCompletionContributor"/>
    <completion.contributor language="yaml"
                            implementationClass="com.intellij.swagger.core.completion.SwYamlHttpStatusCodeCompletionContributor"/>
    <completion.contributor language="JSON"
                            implementationClass="com.intellij.swagger.core.completion.SwJsonHttpStatusCodeCompletionContributor"/>

    <microservices.urlResolverFactory implementation="com.intellij.swagger.core.providers.SwUrlResolver$Factory"/>
    <microservices.oasSpecificationProvider implementation="com.intellij.swagger.core.providers.SwUrlOasSpecificationProvider"/>
    <fileBasedIndex implementation="com.intellij.swagger.core.index.OpenapiSpecificationContentIndex"/>
    <fileBasedIndex implementation="com.intellij.swagger.core.index.SwReferencesIndex"/>
    <psi.referenceContributor language="yaml" implementation="com.intellij.swagger.core.reference.SwYamlReferenceContributor"/>
    <psi.referenceContributor language="JSON" implementation="com.intellij.swagger.core.reference.SwJsonReferenceContributor"/>

    <yaml.customStructureViewFactory order="last" implementation="com.intellij.swagger.core.structureView.SwYamlStructureViewFactory"/>
    <json.customStructureViewFactory implementation="com.intellij.swagger.core.structureView.SwJsonStructureViewFactory"/>

    <backgroundPostStartupActivity implementation="com.intellij.swagger.core.model.remote.RemoteSpecificationDownloadActivity"/>
    <projectConfigurable id="swagger"
                         groupId="language"
                         bundle="messages.SwaggerBundle"
                         key="settings.display.name"
                         instance="com.intellij.swagger.core.settings.ui.SwaggerConfigurable"/>
    <findUsagesHandlerFactory implementation="com.intellij.swagger.core.refactoring.usages.SwStructureViewFindUrlPathUsagesHandlerFactory"/>
    <renameHandler implementation="com.intellij.swagger.core.refactoring.rename.SwUrlPathRenameHandler"/>
    <renameHandler implementation="com.intellij.swagger.core.refactoring.rename.SwYamlPathVariableRenameHandler"/>
    <statistics.counterUsagesCollector implementationClass="com.intellij.swagger.core.SwaggerFeatureUsageCollector"/>
    <notificationGroup id="OpenAPI Specifications" displayType="BALLOON" bundle="messages.SwaggerBundle" key="openapi.notification.title"/>
    <fileEditorProvider implementation="com.intellij.swagger.core.ui.SwaggerUIEditorProvider"/>
    <httpRequestHandler implementation="com.intellij.swagger.core.ui.rest.SwPreviewCorsBypassingProxy"/>
    <httpRequestHandler implementation="com.intellij.swagger.core.ui.rest.SwaggerRequestHandler"/>

    <!--Swagger documentation made lang.documentationProvider so that it's order can be before other language doc providers-->
    <lang.documentationProvider id="swDocumentationProvider"
                                language=""
                                implementationClass="com.intellij.swagger.core.documentation.SwDocumentationProvider"
                                order="before JsonSchemaDocumentationProvider, before YamlJsonSchemaDocumentationProvider"/>
    <localInspection language="yaml"
                     shortName="SwYamlMaybeSpecificationInspection"
                     groupBundle="messages.SwaggerBundle" groupKey="inspection.openapi.group.name"
                     bundle="messages.SwaggerBundle" key="inspection.maybe.specification.name"
                     enabledByDefault="true" level="WARNING"
                     implementationClass="com.intellij.swagger.core.inspections.SwYamlMaybeSpecificationInspection"/>
    <localInspection language="JSON"
                     shortName="SwJsonMaybeSpecificationInspection"
                     groupBundle="messages.SwaggerBundle" groupKey="inspection.openapi.group.name"
                     bundle="messages.SwaggerBundle" key="inspection.maybe.specification.name"
                     enabledByDefault="true" level="WARNING"
                     implementationClass="com.intellij.swagger.core.inspections.SwJsonMaybeSpecificationInspection"/>
    <localInspection language="yaml"
                     shortName="SwYamlUnresolvedReferencesInspection"
                     groupBundle="messages.SwaggerBundle" groupKey="inspection.openapi.group.name"
                     bundle="messages.SwaggerBundle" key="inspection.unresolved.reference"
                     enabledByDefault="true" level="ERROR"
                     implementationClass="com.intellij.swagger.core.inspections.SwYamlUnresolvedReferencesInspection"/>
    <localInspection language="JSON"
                     shortName="SwJsonUnresolvedReferencesInspection"
                     groupBundle="messages.SwaggerBundle" groupKey="inspection.openapi.group.name"
                     bundle="messages.SwaggerBundle" key="inspection.unresolved.reference"
                     enabledByDefault="true" level="ERROR"
                     implementationClass="com.intellij.swagger.core.inspections.SwJsonUnresolvedReferencesInspection"/>

    <json.jsonSchemaGotoDeclarationSuppressor implementation="com.intellij.swagger.core.providers.SwJsonSchemaGtdSuppressor"/>
    <swagger.fileHistoryCollector implementation="com.intellij.swagger.core.diff.vcs.VcsFileRevisionCollector"/>

    <psi.referenceContributor language="Markdown"
                              implementation="com.intellij.swagger.core.diff.markdown.references.SwaggerDiffReferenceContributor"/>
    <iconProvider implementation="com.intellij.swagger.core.diff.markdown.SwDiffIconProvider"/>

    <codeInsight.lineMarkerProvider language="JSON"
                                    implementationClass="com.intellij.swagger.core.providers.httpClient.SwOpenInHttpClientLineMarkerProvider"/>
    <codeInsight.lineMarkerProvider language="yaml"
                                    implementationClass="com.intellij.swagger.core.providers.httpClient.SwOpenInHttpClientLineMarkerProvider"/>
    <codeInsight.lineMarkerProvider language="yaml"
                                    implementationClass="com.intellij.swagger.core.visualEditing.SwYamlVisualEditingLineMarkerProvider"/>
    <codeInsight.lineMarkerProvider language="JSON"
                                    implementationClass="com.intellij.swagger.core.visualEditing.SwJsonVisualEditingLineMarkerProvider"/>

    <json.jsonSchemaGotoDeclarationSuppressor
      implementation="com.intellij.swagger.core.providers.httpClient.json.SwRequestBodySchemaGtdSuppressor"/>

    <spellchecker.bundledDictionaryProvider implementation="com.intellij.swagger.core.SwBundledDictionaryProvider"/>
    <postStartupActivity implementation="com.intellij.swagger.core.visualEditing.mouseProcessing.SwVisualEditingMouseListenerSetupActivity"/>

    <registryKey
      key="swagger.redoc.preview.enabled.key"
      defaultValue="true"
      description="Key for redoc preview enabling"/>
    <registryKey
      defaultValue="true"
      description="Enable internal proxy for requests run from OpenAPI preview [Redoc, SwaggerUI]"
      key="openapi.preview.proxy.enable"/>
    <registryKey
      defaultValue="500000"
      description="Read/Connect timeout in milliseconds for requests run from OpenAPI preview [Redoc, SwaggerUI]"
      key="openapi.preview.proxy.connect.timeout"/>
    <registryKey
      defaultValue="true"
      description="Enable OpenAPI specifications traversal with on the go $ref resolve"
      key="openapi.traversal.resolve.enable"/>
  </extensions>

  <extensions defaultExtensionNs="JavaScript.JsonSchema">
    <ProviderFactory implementation="com.intellij.swagger.core.providers.SwJsonSchemaFileProviderFactory"/>
    <ContentAwareSchemaFileProvider implementation="com.intellij.swagger.core.providers.SpecificationDynamicJsonSchemaFileProvider"/>
  </extensions>

  <extensions defaultExtensionNs="org.intellij.markdown">
    <previewStylesProvider implementation="com.intellij.swagger.core.diff.markdown.SwDiffPreviewStylesProvider"/>
  </extensions>

  <extensionPoints>
    <extensionPoint name="generatedCodeProcessor"
                    interface="com.intellij.swagger.core.codegen.autoImport.GeneratedCodeProcessor"
                    dynamic="true"/>
    <extensionPoint name="fileHistoryCollector"
                    interface="com.intellij.swagger.core.diff.collectors.SwFileHistoryCollector"
                    dynamic="true"/>
    <extensionPoint name="remoteSpecificationPostProcessor"
                    interface="com.intellij.swagger.core.remote.RemoteSpecificationNotificationAction"
                    dynamic="true"/>
  </extensionPoints>
</idea-plugin>
 lib/swagger.jar  terminal  *<idea-plugin xmlns:xi="http://www.w3.org/2001/XInclude" package="org.jetbrains.plugins.terminal">
  <name>Terminal</name>
  <category>Other Tools</category>
  <id>org.jetbrains.plugins.terminal</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <vendor>JetBrains</vendor>
  <description><![CDATA[
<p>Provides integrated terminal (View | Tool Windows | Terminal)
]]></description>

  <dependencies>
    <plugin id="com.intellij.modules.lang"/>
  </dependencies>

  <content>
    <module name="intellij.terminal/cloud"/>
    <module name="intellij.terminal.sh"/>
  </content>

  <resource-bundle>messages.TerminalBundle</resource-bundle>
  <xi:include href="/META-INF/terminal.xml" xpointer="xpointer(/idea-plugin/*)"/>
  <xi:include href="/META-INF/completion-specs.xml" xpointer="xpointer(/idea-plugin/*)"/>

  <actions>
    <action id="Terminal.OpenInTerminal" class="org.jetbrains.plugins.terminal.action.RevealFileInTerminalAction"
            icon="org.jetbrains.plugins.terminal.TerminalIcons.OpenTerminal_13x13">
      <add-to-group group-id="RevealGroup" anchor="last"/>
      <override-text place="RevealInPopup"/>
      <add-to-group group-id="TouchBarDefault_alt" anchor="last"/>
    </action>
    <action id="Terminal.CloseTab" class="com.intellij.openapi.actionSystem.EmptyAction" use-shortcut-of="CloseContent"/>
    <action id="Terminal.RenameSession" class="org.jetbrains.plugins.terminal.action.RenameTerminalSessionAction">
      <add-to-group group-id="ToolWindowContextMenu" anchor="last"/>
    </action>
    <action id="Terminal.MoveToEditor" class="org.jetbrains.plugins.terminal.action.MoveTerminalSessionToEditorAction">
      <add-to-group group-id="ToolWindowContextMenu" anchor="last"/>
    </action>
    <action id="Terminal.SplitVertically" class="org.jetbrains.plugins.terminal.action.TerminalSplitActionBase$Vertical">
      <add-to-group group-id="ToolWindowContextMenu" anchor="last"/>
    </action>
    <action id="Terminal.SplitHorizontally" class="org.jetbrains.plugins.terminal.action.TerminalSplitActionBase$Horizontal">
      <add-to-group group-id="ToolWindowContextMenu" anchor="last"/>
    </action>
    <action id="Terminal.NextSplitter" use-shortcut-of="NextSplitter"
            class="org.jetbrains.plugins.terminal.action.GotoSplitTerminalActionBase$Next">
      <add-to-group group-id="ToolWindowContextMenu" anchor="last"/>
    </action>
    <action id="Terminal.PrevSplitter" use-shortcut-of="PrevSplitter"
            class="org.jetbrains.plugins.terminal.action.GotoSplitTerminalActionBase$Prev">
      <add-to-group group-id="ToolWindowContextMenu" anchor="last"/>
    </action>
    <action id="Terminal.MoveToolWindowTabLeft" class="org.jetbrains.plugins.terminal.action.MoveTerminalToolWindowTabLeftAction">
      <add-to-group group-id="ToolWindowContextMenu" anchor="last"/>
    </action>
    <action id="Terminal.MoveToolWindowTabRight" class="org.jetbrains.plugins.terminal.action.MoveTerminalToolWindowTabRightAction">
      <add-to-group group-id="ToolWindowContextMenu" anchor="last"/>
    </action>
    <action id="Terminal.SwitchFocusToEditor" class="com.intellij.openapi.actionSystem.EmptyAction">
      <keyboard-shortcut first-keystroke="ESCAPE" keymap="$default"/>
    </action>
    <action id="Terminal.CopySelectedText" class="org.jetbrains.plugins.terminal.action.TerminalCopyTextAction"
            icon="AllIcons.Actions.Copy">
      <!-- use keyboard-shortcuts of $Copy with Ctrl+Shift+C on Linux  -->
      <keyboard-shortcut first-keystroke="control shift C" keymap="Default for XWin"/>
      <keyboard-shortcut first-keystroke="control C" keymap="Default for XWin"/>
      <keyboard-shortcut first-keystroke="control INSERT" keymap="Default for XWin"/>
      <keyboard-shortcut first-keystroke="control C" keymap="$default"/>
      <keyboard-shortcut first-keystroke="control INSERT" keymap="$default"/>
    </action>
    <action id="Terminal.Paste" class="org.jetbrains.plugins.terminal.action.TerminalPasteAction" icon="AllIcons.Actions.MenuPaste">
      <!-- use keyboard-shortcuts of $Paste with Ctrl+Shift+V on Linux  -->
      <keyboard-shortcut first-keystroke="control shift V" keymap="Default for XWin"/>
      <keyboard-shortcut first-keystroke="control V" keymap="Default for XWin"/>
      <keyboard-shortcut first-keystroke="shift INSERT" keymap="Default for XWin"/>
      <keyboard-shortcut first-keystroke="control V" keymap="$default"/>
      <keyboard-shortcut first-keystroke="shift INSERT" keymap="$default"/>
    </action>
    <action id="Terminal.Find" class="com.intellij.openapi.actionSystem.EmptyAction" use-shortcut-of="Find"/>
    <action id="Terminal.SelectAll" class="com.intellij.openapi.actionSystem.EmptyAction">
      <keyboard-shortcut first-keystroke="meta A" keymap="Mac OS X"/>
      <keyboard-shortcut first-keystroke="meta A" keymap="Mac OS X 10.5+"/>
    </action>
    <action id="Terminal.SmartCommandExecution.Run" class="com.intellij.openapi.actionSystem.EmptyAction">
      <keyboard-shortcut first-keystroke="control ENTER" keymap="$default"/>
    </action>
    <action id="Terminal.SmartCommandExecution.Debug" class="com.intellij.openapi.actionSystem.EmptyAction">
      <keyboard-shortcut first-keystroke="control shift ENTER" keymap="$default"/>
    </action>
    <action id="Terminal.ClearBuffer" class="org.jetbrains.plugins.terminal.action.TerminalClearAction">
      <keyboard-shortcut first-keystroke="control L" keymap="$default"/>
      <keyboard-shortcut first-keystroke="meta K" keymap="Mac OS X"/>
      <keyboard-shortcut first-keystroke="meta K" keymap="Mac OS X 10.5+"/>
    </action>


    <!--  New Terminal Actions  -->
    <action id="Terminal.SelectLastBlock" class="org.jetbrains.plugins.terminal.exp.TerminalSelectLastBlockAction">
      <keyboard-shortcut first-keystroke="control UP" keymap="$default"/>
      <keyboard-shortcut first-keystroke="meta UP" keymap="Mac OS X" replace-all="true"/>
      <keyboard-shortcut first-keystroke="meta UP" keymap="Mac OS X 10.5+" replace-all="true"/>
    </action>
    <action id="Terminal.SelectPrompt" class="org.jetbrains.plugins.terminal.exp.TerminalSelectPromptAction">
      <keyboard-shortcut first-keystroke="control DOWN" keymap="$default"/>
      <keyboard-shortcut first-keystroke="meta DOWN" keymap="Mac OS X" replace-all="true"/>
      <keyboard-shortcut first-keystroke="meta DOWN" keymap="Mac OS X 10.5+" replace-all="true"/>
    </action>
    <action id="Terminal.SelectBlockAbove" class="org.jetbrains.plugins.terminal.exp.TerminalSelectBlockAboveAction">
      <keyboard-shortcut first-keystroke="UP" keymap="$default"/>
      <keyboard-shortcut first-keystroke="control UP" keymap="$default"/>
      <keyboard-shortcut first-keystroke="meta UP" keymap="Mac OS X"/>
      <keyboard-shortcut first-keystroke="meta UP" keymap="Mac OS X 10.5+"/>
    </action>
    <action id="Terminal.SelectBlockBelow" class="org.jetbrains.plugins.terminal.exp.TerminalSelectBlockBelowAction">
      <keyboard-shortcut first-keystroke="DOWN" keymap="$default"/>
    </action>
    <action id="Terminal.ExpandBlockSelectionAbove" class="org.jetbrains.plugins.terminal.exp.TerminalExpandBlockSelectionAboveAction"
            use-shortcut-of="EditorUpWithSelection">
    </action>
    <action id="Terminal.ExpandBlockSelectionBelow" class="org.jetbrains.plugins.terminal.exp.TerminalExpandBlockSelectionBelowAction"
            use-shortcut-of="EditorDownWithSelection">
    </action>
    <action id="Terminal.CopyBlock" class="org.jetbrains.plugins.terminal.action.TerminalCopyBlockAction" icon="AllIcons.Actions.Copy">
      <keyboard-shortcut first-keystroke="meta C" keymap="Mac OS X"/>
      <keyboard-shortcut first-keystroke="meta C" keymap="Mac OS X 10.5+"/>
    </action>

    <action id="Terminal.CommandCompletion" class="org.jetbrains.plugins.terminal.action.TerminalCommandCompletionAction">
      <keyboard-shortcut first-keystroke="TAB" keymap="$default"/>
    </action>
    <action id="Terminal.InsertInlineCompletionItem" class="org.jetbrains.plugins.terminal.exp.TerminalInsertInlineCompletionAction">
      <keyboard-shortcut first-keystroke="RIGHT" keymap="$default"/>
    </action>
    <action id="Terminal.ShowDocumentation" class="org.jetbrains.plugins.terminal.action.TerminalShowDocAction"
            use-shortcut-of="QuickJavaDoc"/>
    <action id="Terminal.Escape" class="org.jetbrains.plugins.terminal.action.TerminalEscapeAction"
            use-shortcut-of="EditorEscape"/>
    <action id="Terminal.CloseSession" class="org.jetbrains.plugins.terminal.action.TerminalCloseSessionAction">
      <keyboard-shortcut first-keystroke="control D" keymap="$default"/>
      <keyboard-shortcut first-keystroke="control D" keymap="Mac OS X" replace-all="true"/>
      <keyboard-shortcut first-keystroke="control D" keymap="Mac OS X 10.5+" replace-all="true"/>
    </action>
    <action id="Terminal.ClearPrompt" class="org.jetbrains.plugins.terminal.action.TerminalClearPrompt">
      <keyboard-shortcut first-keystroke="control C" keymap="$default"/>
      <keyboard-shortcut first-keystroke="control C" keymap="Mac OS X" replace-all="true"/>
      <keyboard-shortcut first-keystroke="control C" keymap="Mac OS X 10.5+" replace-all="true"/>
    </action>
    <action id="Terminal.DeletePreviousWord" class="org.jetbrains.plugins.terminal.action.TerminalDeletePreviousWordAction">
      <keyboard-shortcut first-keystroke="control W" keymap="$default"/>
      <keyboard-shortcut first-keystroke="control W" keymap="Mac OS X" replace-all="true"/>
      <keyboard-shortcut first-keystroke="control W" keymap="Mac OS X 10.5+" replace-all="true"/>
    </action>
    <action id="Terminal.SearchInCommandHistory" class="org.jetbrains.plugins.terminal.exp.history.CommandSearchAction">
      <keyboard-shortcut first-keystroke="control R" keymap="$default"/>
      <keyboard-shortcut first-keystroke="control R" keymap="Mac OS X" replace-all="true"/>
      <keyboard-shortcut first-keystroke="control R" keymap="Mac OS X 10.5+" replace-all="true"/>
    </action>

    <group id="Terminal.OutputContextMenu">
      <reference ref="Terminal.CopyBlock"/>
      <reference ref="Terminal.CopySelectedText"/>
      <reference ref="Terminal.Paste"/>
    </group>

    <group id="Terminal.PromptContextMenu">
      <!-- todo: replace editor actions with dedicated terminal actions -->
      <reference ref="EditorCut"/>
      <reference ref="Terminal.CopySelectedText"/>
      <reference ref="Terminal.Paste"/>
    </group>

    <action id="Terminal.ShowFeedbackNotification" internal="true"
            class="org.jetbrains.plugins.terminal.exp.feedback.ShowBlockTerminalFeedbackNotificationAction"/>
  </actions>

</idea-plugin>
 lib/terminal.jar  textmate  <idea-plugin>
  <id>org.jetbrains.plugins.textmate</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>TextMate Bundles</name>
  <category>Other Tools</category>
  <vendor>JetBrains</vendor>

  <description><![CDATA[
      Supports syntax highlighting for arbitrary file types, controlled by <a href="https://macromates.com/textmate/manual/bundles">TextMate bundles</a>
      ]]></description>

  <depends>com.intellij.modules.lang</depends>

  <extensionPoints>
    <extensionPoint qualifiedName="com.intellij.textmate.bundleProvider"
                    interface="org.jetbrains.plugins.textmate.api.TextMateBundleProvider"/>
  </extensionPoints>

  <extensions defaultExtensionNs="com.intellij">
    <registryKey key="textmate.line.highlighting.limit" defaultValue="20000"
                 description="The maximum length of the line to be highlighted by TextMate lexer."/>

    <fileType name="textmate" implementationClass="org.jetbrains.plugins.textmate.TextMateFileType" language="textmate" fieldName="INSTANCE"/>
    <fileTypeDetector implementation="org.jetbrains.plugins.textmate.TextMateFileType$TextMateFileDetector" order="last"/>
    <obsoleteStorage file="textmate_os.xml">
      <components>
        <component>TextMateSettings</component>
      </components>
    </obsoleteStorage>

    <applicationService id="textmateService" serviceInterface="org.jetbrains.plugins.textmate.TextMateService"
                        serviceImplementation="org.jetbrains.plugins.textmate.TextMateServiceImpl"/>
    <editorHighlighterProvider filetype="textmate" implementationClass="org.jetbrains.plugins.textmate.language.syntax.highlighting.TextMateEditorHighlighterProvider"/>
    <lang.syntaxHighlighterFactory language="textmate"
                                   implementationClass="org.jetbrains.plugins.textmate.language.syntax.highlighting.TextMateSyntaxHighlighterFactory"/>
    <applicationConfigurable groupId="editor"
                             bundle="messages.IdeBundle"
                             key="configurable.TextMateConfigurableProvider.display.name"
                             id="reference.settingsdialog.textmate.bundles" provider="org.jetbrains.plugins.textmate.configuration.TextMateConfigurableProvider"/>
    <lang.parserDefinition language="textmate" implementationClass="org.jetbrains.plugins.textmate.psi.TextMateParserDefinition"/>
    <braceMatcher filetype="textmate" implementationClass="org.jetbrains.plugins.textmate.editor.TextMateBraceMatcher"/>
    <typedHandler implementation="org.jetbrains.plugins.textmate.editor.TextMateTypedHandler"/>
    <backspaceHandlerDelegate implementation="org.jetbrains.plugins.textmate.editor.TextMateBackspaceHandler"/>
    <multiLangCommenter implementation="org.jetbrains.plugins.textmate.editor.TextMateCommentProvider"/>
    <lang.commenter language="textmate" implementationClass="org.jetbrains.plugins.textmate.editor.TextMateCommentProvider"/>
    <customLiveTemplate implementation="org.jetbrains.plugins.textmate.editor.TextMateCustomLiveTemplate"/>
    <todoIndexer filetype="textmate" implementationClass="com.intellij.psi.impl.cache.impl.todo.PlainTextTodoIndexer"/>
    <idIndexer filetype="textmate" implementationClass="com.intellij.psi.impl.cache.impl.id.PlainTextIdIndexer"/>
    <indexPatternBuilder implementation="org.jetbrains.plugins.textmate.TextMatePatternBuilder"/>
    <spellchecker.support language="textmate" implementationClass="org.jetbrains.plugins.textmate.spellchecker.TextMateSpellingStrategy"/>
    <completion.contributor language="textmate" implementationClass="org.jetbrains.plugins.textmate.editor.TextMateCompletionContributor"/>
    <notificationGroup id="TextMate Bundles" displayType="BALLOON" bundle="messages.TextMateBundle" key="notification.group.textmate.bundles"/>
    <fileIconProvider implementation="org.jetbrains.plugins.textmate.TextMateBackedFileIconProvider" order="last"/>
    <lineIndentProvider implementation="org.jetbrains.plugins.textmate.editor.TextMateLineIndentProvider" />
    <!--<lang.formatter language="textmate" implementationClass="org.jetbrains.plugins.textmate.editor.TextMateFormattingModelBuilder"/>-->
    <applicationService serviceImplementation="org.jetbrains.plugins.textmate.configuration.TextMateBuiltinBundlesSettings" />
    <applicationService serviceImplementation="org.jetbrains.plugins.textmate.configuration.TextMateUserBundlesSettings" />
  </extensions>
  <actions>
    <action id="install-vscode-plugin" class="org.jetbrains.plugins.textmate.actions.InstallVSCodePluginAction"
            text="Install VSCode Plugin..." description="Installs plugin for VSCode"
            internal="true"/>
  </actions>
</idea-plugin>
 lib/textmate.jar  vcs-git  <idea-plugin package="git4idea">
  <name>Git</name>
  <id>Git4Idea</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <description>
    <![CDATA[
      Provides integration with <a href="https://git-scm.com/">Git</a>.
        <ul>
        <li>Check out your source code from a Git repository</li>
        <li>Browse, commit, push, pull, merge, view log, review pull requests, and much more</li>
        <li>Dedicated item in the VCS menu and in the context menu</li>
        </ul>
         <p>To configure, open <b>Settings / Preferences</b> and go to <b>Version Control | Git</b>.</p>
      ]]>
  </description>
  <category>Version Controls</category>
  <vendor>JetBrains</vendor>

  <resource-bundle>messages.GitBundle</resource-bundle>

  <dependencies>
    <plugin id="com.intellij.modules.vcs"/>
  </dependencies>
  <depends optional="true" config-file="git-performance-plugin-support.xml">com.jetbrains.performancePlugin</depends>

  <content>
    <module name="intellij.vcs.git/newUiOnboarding"/>
  </content>

  <actions>
    <action id="Git.Init" class="git4idea.actions.GitInit">
      <add-to-group group-id="Vcs.Import"/>
      <add-to-group group-id="Vcs.Operations.Popup.NonVcsAware" relative-to-action="Start.Use.Vcs" anchor="before"/>
      <add-to-group group-id="Vcs.ToolWindow.CreateRepository"/>
      <override-text place="Vcs.Toolbar.Widget"/>
    </action>

    <action id="Git.Log" class="git4idea.log.GitShowExternalLogAction">
      <add-to-group group-id="Vcs.Browse"/>
    </action>

    <action class="git4idea.log.GitShowCommitInLogAction" id="Git.SelectInGitLog">
      <add-to-group group-id="VcsSelectionHistoryDialog.Popup" anchor="after" relative-to-action="Vcs.CopyRevisionNumberAction"/>
    </action>
    <action class="git4idea.log.GitBrowseRepoAtRevisionAction" id="Git.BrowseRepoAtRevision"/>

    <group class="git4idea.actions.GitCheckoutActionGroup" id="Git.CheckoutGroup" searchable="false"/>
    <group class="git4idea.ui.branch.GitLogBranchOperationsActionGroup" id="Git.BranchOperationGroup"/>
    <action class="git4idea.actions.GitCheckoutRevisionAction" id="Git.CheckoutRevision"/>
    <action class="git4idea.actions.GitCreateNewBranchAction" id="Git.CreateNewBranch"/>
    <action class="git4idea.actions.GitCreateTagAction" id="Git.CreateNewTag"/>
    <action id="Git.PushUpToCommit" class="git4idea.actions.GitPushUpToCommitAction"/>
    <action id="Git.Reset.In.Log" class="git4idea.reset.GitResetAction" icon="AllIcons.Actions.Rollback"/>
    <action id="Git.Revert.In.Log" class="git4idea.revert.GitRevertAction"/>
    <action id="Git.Uncommit" class="git4idea.reset.GitUncommitAction"/>
    <action id="Git.Reword.Commit" class="git4idea.rebase.GitRewordAction"/>
    <group id="Git.Reword.ToolbarActions">
      <reference ref="Vcs.ShowMessageHistory" />
    </group>
    <action id="Git.Squash.Commits" class="git4idea.rebase.log.squash.GitSquashLogAction"/>
    <action id="Git.Drop.Commits" class="git4idea.rebase.log.drop.GitDropLogAction"/>
    <action id="Git.Rename.Local.Branch" class="git4idea.ui.branch.dashboard.BranchesDashboardActions$RenameLocalBranch"/>
    <action id="Git.Checkout.Branch" class="git4idea.ui.branch.dashboard.BranchesDashboardActions$CheckoutSelectedBranchAction"/>
    <action id="Git.New.Branch.In.Log" class="git4idea.ui.branch.dashboard.BranchesDashboardActions$NewBranchAction"/>
    <action id="Git.Log.Branches.Change.Branch.Filter"
            class="git4idea.ui.branch.dashboard.BranchesDashboardActions$UpdateBranchFilterInLogAction">
      <mouse-shortcut keystroke="button1 doubleClick" keymap="$default"/>
      <keyboard-shortcut first-keystroke="ENTER" keymap="$default"/>
    </action>
    <action id="Git.Log.Branches.Navigate.Log.To.Selected.Branch"
            icon="AllIcons.General.Locate"
            use-shortcut-of="SelectIn"
            class="git4idea.ui.branch.dashboard.BranchesDashboardActions$NavigateLogToSelectedBranchAction"/>
    <action id="Git.Log.Hide.Branches" class="git4idea.ui.branch.dashboard.BranchesDashboardActions$HideBranchesAction"
            icon="AllIcons.Actions.ArrowCollapse"/>
    <group id="Git.Log.Branches.Settings" popup="true" icon="AllIcons.General.GearPlain"
           class="com.intellij.ide.actions.NonTrivialActionGroup">
      <separator key="group.Git.Log.Branches.Settings.Separator.text"/>
      <action id="Git.Log.Branches.Change.Branch.Filter.On.Selection"
              class="git4idea.ui.branch.dashboard.BranchesDashboardActions$ChangeBranchFilterAction"/>
      <action id="Git.Log.Branches.Navigate.Log.To.Branch.On.Selection"
              class="git4idea.ui.branch.dashboard.BranchesDashboardActions$NavigateLogToBranchAction"/>
    </group>
    <group id="Git.Log.Branches.Grouping.Settings" icon="AllIcons.Actions.GroupBy"
           class="git4idea.ui.branch.dashboard.BranchesDashboardActions$GroupingSettingsGroup">
      <separator key="group.Git.Log.Branches.Grouping.Settings.text"/>
      <action id="Git.Log.Branches.GroupBy.Directory"
              icon="AllIcons.Actions.GroupByPackage"
              class="git4idea.ui.branch.dashboard.BranchesDashboardActions$GroupBranchByDirectoryAction"/>
      <action id="Git.Log.Branches.GroupBy.Repository"
              class="git4idea.ui.branch.dashboard.BranchesDashboardActions$GroupBranchByRepositoryAction"/>
    </group>
    <action id="Git.Fixup.To.Commit" class="git4idea.rebase.GitCommitFixupBySubjectAction"/>
    <action id="Git.Squash.Into.Commit" class="git4idea.rebase.GitCommitSquashBySubjectAction"/>
    <action id="Git.Interactive.Rebase" class="git4idea.rebase.GitInteractiveRebaseAction"/>
    <action id="Git.Commit.And.Push.Executor" class="git4idea.actions.GitCommitAndPushExecutorAction">
      <add-to-group group-id="Vcs.Commit.PrimaryCommitActions"/>
      <keyboard-shortcut first-keystroke="control alt K" keymap="$default"/>
    </action>

    <group id="Git.FileActions">
      <reference ref="CheckinFiles"/>
      <action id="Git.Add" class="com.intellij.openapi.vcs.changes.actions.ScheduleForAdditionWithIgnoredFilesConfirmationAction"
              icon="AllIcons.General.Add" use-shortcut-of="ChangesView.AddUnversioned"/>
      <separator/>
      <reference ref="Annotate"/>
      <reference ref="Compare.SameVersion"/>
      <reference ref="Compare.Selected"/>
      <action id="Git.CompareWithBranch" class="git4idea.actions.GitCompareWithBranchAction"/>
      <reference ref="Vcs.ShowTabbedFileHistory"/>
      <reference id="Vcs.ShowHistoryForBlock"/>
    </group>

    <action id="Git.CompareWithTag" class="git4idea.actions.GitCompareWithTagAction"/>

    <group id="Git.MainMenu.FileActions" class="git4idea.actions.GitFileActionGroup" popup="true">
      <reference ref="Git.FileActions"/>
    </group>

    <group id="Git.MainMenu.RebaseActions" class="git4idea.actions.GitRepositoryStateActionGroup$Rebase" popup="true">
      <action id="Git.Rebase.Abort" class="git4idea.actions.GitRebaseAbort"/>
      <action id="Git.Rebase.Continue" class="git4idea.actions.GitRebaseContinue"/>
      <action id="Git.Rebase.Skip" class="git4idea.actions.GitRebaseSkip"/>
    </group>

    <group id="Git.MainMenu.MergeActions" class="git4idea.actions.GitRepositoryStateActionGroup$Merge" icon="AllIcons.Vcs.Merge">
      <action id="Git.Merge.Abort" class="git4idea.actions.GitAbortOperationAction$Merge"/>
    </group>

    <group id="Git.MainMenu.LocalChanges" popup="true">
      <reference ref="ChangesView.Shelve"/>
      <reference ref="Vcs.Show.Shelf"/>
      <action id="Git.Stash" class="git4idea.actions.GitStash"/>
      <action id="Git.Unstash" class="git4idea.actions.GitUnstash"/>
      <reference ref="ChangesView.Revert"/>
      <reference ref="Vcs.UmlDiff"/>
    </group>

    <group id="Git.MainMenu" class="git4idea.actions.GitMainMenuActionGroup" searchable="false">

      <reference ref="CheckinProject"/>
      <reference ref="Vcs.Push"/>
      <reference ref="Vcs.UpdateProject"/>
      <action id="Git.Pull" class="git4idea.actions.GitPull"/>
      <action id="Git.Fetch" class="git4idea.actions.GitFetch" icon="AllIcons.Vcs.Fetch"/>
      <separator/>
      <action id="Git.Merge" class="git4idea.actions.GitMerge" icon="AllIcons.Vcs.Merge"/>
      <reference ref="Git.MainMenu.MergeActions"/>
      <action id="Git.Rebase" class="git4idea.actions.GitRebase"/>
      <reference ref="Git.MainMenu.RebaseActions"/>
      <action id="Git.ResolveConflicts" class="git4idea.actions.GitResolveConflictsAction"/>
      <separator/>
      <action id="Git.Branches" class="git4idea.ui.branch.GitBranchesAction" icon="AllIcons.Vcs.Branch">
        <keyboard-shortcut first-keystroke="control shift BACK_QUOTE" keymap="$default"/>
        <keyboard-shortcut first-keystroke="meta shift BACK_QUOTE" keymap="Mac OS X" remove="true"/>
        <keyboard-shortcut first-keystroke="meta shift BACK_QUOTE" keymap="Mac OS X 10.5+" remove="true"/>
      </action>
      <reference ref="Git.CreateNewBranch"/>
      <action id="Git.Tag" class="git4idea.actions.GitTag"/>
      <action id="Git.Reset" class="git4idea.actions.GitResetHead"/>
      <separator/>
      <reference ref="Vcs.Show.Log"/>
      <reference id="Patch.MainMenu"/>
      <reference id="Git.MainMenu.LocalChanges"/>
      <reference id="Git.MainMenu.FileActions"/>
      <separator/>
      <action id="Git.Configure.Remotes" class="git4idea.remote.GitConfigureRemotesAction"/>
      <action id="Git.Clone" class="git4idea.actions.GitCloneAction"/>
      <separator/>
      <reference id="Vcs.QuickListPopupAction"/>
      <separator/>
      <action id="Git.Revert.Abort" class="git4idea.actions.GitAbortOperationAction$Revert"/>
      <action id="Git.CherryPick.Abort" class="git4idea.actions.GitAbortOperationAction$CherryPick"/>

      <add-to-group group-id="VcsGroups" relative-to-action="Vcs.MainMenu" anchor="after"/>
    </group>

    <group id="GitRepositoryActions">
      <reference ref="Vcs.Push"/>
      <reference ref="Git.Pull"/>
      <reference ref="Git.Fetch"/>
      <separator/>
      <reference ref="Git.Merge"/>
      <reference ref="Git.MainMenu.MergeActions"/>
      <reference ref="Git.Rebase"/>
      <reference ref="Git.MainMenu.RebaseActions"/>
      <separator/>
      <reference ref="Git.Branches"/>
      <reference ref="Git.CreateNewBranch"/>
      <reference ref="Git.Tag"/>
      <reference ref="Git.Reset"/>
      <separator/>
      <reference ref="Git.Stash"/>
      <reference ref="Git.Unstash"/>
      <separator/>
      <reference ref="Git.Configure.Remotes"/>
      <reference ref="Git.Clone"/>
      <separator/>
      <reference ref="Git.Revert.Abort"/>
      <reference ref="Git.CherryPick.Abort"/>
    </group>

    <group id="Git.Ongoing.Rebase.Actions" popup="false">
      <!-- See GitOngoingOperationAction -->
      <reference id="Git.Rebase.Abort"/>
      <reference id="Git.Merge.Abort"/>
      <reference id="Git.CherryPick.Abort"/>
      <reference id="Git.Revert.Abort"/>
      <reference id="Git.Rebase.Continue"/>
      <reference id="Git.Rebase.Skip"/>
    </group>

    <group id="Git.Branches.Popup.Settings" class="git4idea.ui.branch.popup.GitBranchesTreePopupSettings" icon="AllIcons.Actions.More">
      <action class="git4idea.ui.branch.popup.GitBranchesTreePopupFilterSeparatorWithText"/>
      <action id="git.branches.popup.filter.by.action" class="git4idea.ui.branch.popup.GitBranchesTreePopupFilterByAction"/>
      <action id="git.branches.popup.filter.by.repository" class="git4idea.ui.branch.popup.GitBranchesTreePopupFilterByRepository"/>
      <separator/>
      <action class="git4idea.ui.branch.popup.GitBranchesTreePopupGroupByPrefixAction"/>
      <action class="git4idea.ui.branch.popup.GitBranchesTreePopupTrackReposSynchronouslyAction"/>
      <action class="git4idea.ui.branch.popup.GitBranchesTreePopupShowRecentBranchesAction"/>
      <action class="git4idea.ui.branch.popup.GitBranchesTreePopupResizeAction"/>
    </group>

    <group id="Git.Branches.List">
      <reference ref="Git.Ongoing.Rebase.Actions"/>
      <action class="git4idea.actions.branch.GitNewBranchAction"/>
      <action class="git4idea.actions.branch.GitCheckoutFromInputAction"/>
    </group>

    <group id="Git.Branches.Popup.SpeedSearch">
      <reference ref="EditorBackSpace"/>
      <reference ref="EditorCut"/>
      <reference ref="EditorPaste"/>
      <reference ref="$Undo"/>
    </group>

    <group id="Git.Branch">
      <action class="git4idea.actions.branch.GitCheckoutAction"/>
      <action class="git4idea.actions.branch.GitCheckoutAsNewBranch"/>
      <action class="git4idea.actions.branch.GitCheckoutWithRebaseAction"/>
      <separator/>
      <action class="git4idea.actions.branch.GitCompareWithBranchAction"/>
      <action class="git4idea.actions.branch.GitShowDiffWithBranchAction"/>
      <separator/>
      <action class="git4idea.actions.branch.GitRebaseBranchAction"/>
      <action class="git4idea.actions.branch.GitMergeBranchAction"/>
      <separator/>
      <action class="git4idea.actions.branch.GitUpdateSelectedBranchAction"/>
      <action class="git4idea.actions.branch.GitPushBranchAction"/>
      <action class="git4idea.actions.branch.GitPullBranchAction$WithMerge"/>
      <action class="git4idea.actions.branch.GitPullBranchAction$WithRebase"/>
      <separator/>
      <action class="git4idea.actions.branch.GitRenameBranchAction"/>
      <action class="git4idea.actions.branch.GitDeleteBranchAction"/>
    </group>

    <group id="Git.Menu" class="git4idea.actions.GitMenu" popup="true" searchable="false">
      <reference ref="Git.FileActions"/>
      <separator/>
      <reference ref="ChangesView.Revert"/>
      <separator/>
      <reference ref="GitRepositoryActions"/>
      <add-to-group group-id="VcsGlobalGroup" anchor="after" relative-to-action="Vcs.Specific"/>
    </group>

    <group id="Git.ContextMenu" class="git4idea.actions.GitMenu" popup="true" searchable="false">
      <reference ref="Git.FileActions"/>
      <reference ref="Show.Current.Revision"/>
      <reference ref="ChangesView.Revert"/>
      <reference ref="ChangesView.RevertFiles"/>
      <separator/>
      <reference ref="Git.ResolveConflicts"/>
      <separator/>
      <reference ref="GitRepositoryActions"/>
      <add-to-group group-id="VcsGroup" anchor="last"/>
    </group>

    <action id="Git.ShowBranches" class="git4idea.actions.GitBranchesComboBoxAction" icon="AllIcons.Vcs.Branch"
            use-shortcut-of="Git.Branches">
      <add-to-group group-id="SegmentedVcsActionsBarGroup" anchor="first"/>
    </action>

    <action id="Git.Toolbar.ShowMoreActions" class="git4idea.actions.GitQuickActionsToolbarPopup">
      <add-to-group group-id="SegmentedVcsActionsBarGroup" anchor="last"/>
    </action>

    <action id="Git.Log.Show.Command" class="git4idea.log.command.ShowGitLogCommandAction" text="Show Git Log for Command" internal="true"/>

    <!--This group is empty and unused, left for plugins compatibility.-->
    <group id="Git.LogContextMenu"/>

    <group id="Git.FileHistory.ContextMenu">
      <reference id="Git.SelectInGitLog"/>
      <separator/>
      <reference id="Git.Revert.In.Log"/>
      <separator/>
      <reference id="Git.CreateNewTag"/>
      <separator/>
      <add-to-group group-id="Vcs.FileHistory.ContextMenu" relative-to-action="VcsHistoryActionsGroup" anchor="before"/>
    </group>

    <group id="Git.Log.ContextMenu.CheckoutBrowse">
      <reference id="Git.CheckoutGroup"/>
      <reference id="Git.BrowseRepoAtRevision"/>

      <add-to-group group-id="Vcs.Log.ContextMenu" relative-to-action="Vcs.Log.CompareRevisions" anchor="before"/>
    </group>

    <group id="Git.Log.ContextMenu">
      <reference id="Git.Reset.In.Log"/>
      <reference id="Git.Revert.In.Log"/>
      <reference id="Git.Uncommit"/>
      <separator/>
      <reference id="Git.Reword.Commit"/>
      <reference id="Git.Fixup.To.Commit"/>
      <reference id="Git.Squash.Into.Commit"/>
      <reference id="Git.Drop.Commits"/>
      <reference id="Git.Squash.Commits"/>
      <reference id="Git.Interactive.Rebase"/>
      <reference id="Git.PushUpToCommit"/>
      <separator/>
      <reference id="Git.BranchOperationGroup"/>
      <reference id="Git.CreateNewBranch"/>
      <reference id="Git.CreateNewTag"/>
      <separator/>
      <add-to-group group-id="Vcs.Log.ContextMenu" relative-to-action="Vcs.Log.GoToChild" anchor="before"/>
    </group>

    <group id="Git.Log.Toolbar">
      <action id="Git.Log.DeepCompare" class="git4idea.branch.DeepCompareAction"/>
      <add-to-group group-id="Vcs.Log.PresentationSettings" relative-to-action="Vcs.Log.HighlightersActionGroup" anchor="after"/>
    </group>

    <action id="Git.Log.GitUseSharedLogAction" class="git4idea.actions.GitUseSharedLogAction" internal="true"/>
    <action id="Git.Log.GitDumpLogIndexDataAction" class="git4idea.actions.GitDumpLogIndexDataAction" internal="true"/>
    <group id="Git.Log.ShareLogIndexData" internal="true">
      <reference id="Git.Log.GitUseSharedLogAction"/>
      <reference id="Git.Log.GitDumpLogIndexDataAction"/>
    </group>

    <group id="Git.Log.Internal" internal="true">
      <reference id="Git.Log.ShareLogIndexData"/>
      <separator/>
      <reference id="Git.Log.Show.Command"/>
      <add-to-group group-id="Vcs.Log.Internal" anchor="last"/>
    </group>

    <action id="Git.OpenExcludeFile" class="git4idea.ignore.actions.OpenGitExcludeAction"/>
    <group id="Git.Ignore.File" class="git4idea.ignore.actions.GitIgnoreFileActionGroup">
      <add-to-group group-id="ChangesViewPopupMenu" anchor="after" relative-to-action="ChangesView.AddUnversioned"/>
      <add-to-group group-id="Git.FileActions" anchor="after" relative-to-action="Git.Add"/>
      <add-to-group group-id="Unversioned.Files.Dialog.Popup" anchor="after" relative-to-action="$Delete"/>
    </group>

    <action id="git4idea.commands.TestGitHttpLoginDialogAction" class="git4idea.commands.TestGitHttpLoginDialogAction" internal="true"/>
    <action id="CopyPathFromRepositoryRootProvider" class="git4idea.actions.CopyPathFromRepositoryRootProvider">
      <add-to-group group-id="CopyFileReference"/>
    </action>

    <action id="Git.Show.Stage" class="git4idea.index.actions.GitShowStagingAreaAction"/>
    <action id="Git.Commit.Stage" class="git4idea.index.actions.GitCommitWithStagingAreaAction" use-shortcut-of="CheckinProject"
            icon="AllIcons.Actions.Commit">
      <add-to-group group-id="Git.MainMenu" anchor="after" relative-to-action="CheckinProject"/>
      <add-to-group group-id="VcsToolbarActions" anchor="after" relative-to-action="CheckinProject"/>
      <add-to-group group-id="VcsNavBarToolbarActions" anchor="after" relative-to-action="CheckinProject"/>
    </action>
    <action id="Git.Stage.Enable" class="git4idea.index.actions.GitEnableStagingAreaAction"/>
    <action id="Git.Stage.Disable" class="git4idea.index.actions.GitDisableStagingAreaAction"/>
    <action id="Git.Stage.Add" class="git4idea.index.actions.GitAddAction" use-shortcut-of="ChangesView.AddUnversioned"/>
    <action id="Git.Stage.Add.No.Content" class="git4idea.index.actions.GitAddWithoutContent"/>
    <action id="Git.Stage.Reset" class="git4idea.index.actions.GitResetAction" use-shortcut-of="ChangesView.Revert"/>
    <action id="Git.Stage.Revert" class="git4idea.index.actions.GitRevertAction" use-shortcut-of="ChangesView.Revert"/>
    <action id="Git.Stage.AcceptTheirs" class="git4idea.index.actions.GitStageAcceptTheirsAction"/>
    <action id="Git.Stage.AcceptYours" class="git4idea.index.actions.GitStageAcceptYoursAction"/>
    <action id="Git.Stage.Merge" class="git4idea.index.actions.GitStageMergeConflictAction" icon="AllIcons.Vcs.Merge"/>
    <action id="Git.Stage.ThreeSideDiff" class="git4idea.index.actions.GitStageThreeSideDiffAction"/>
    <action id="Git.Stage.ToggleIgnored" class="git4idea.index.actions.GitToggleIgnoredFilesAction"/>
    <action id="Git.Stage.ToggleCommitAll" class="git4idea.index.actions.GitToggleCommitAllAction">
      <add-to-group group-id="CommitView.GearActions"/>
    </action>
    <action id="Git.Stage.Add.All" class="git4idea.index.actions.GitStageAllAction"/>
    <action id="Git.Stage.Add.Tracked" class="git4idea.index.actions.GitStageTrackedAction" icon="AllIcons.General.Add"/>
    <action id="Git.Stage.Show.Staged" class="git4idea.index.actions.GitShowStagedVersionAction"/>
    <action id="Git.Stage.Show.Local" class="git4idea.index.actions.GitShowLocalVersionAction"/>
    <action id="Git.Stage.Compare.Local.Staged" class="git4idea.index.actions.GitStageCompareLocalWithStagedAction"/>
    <action id="Git.Stage.Compare.Staged.Local" class="git4idea.index.actions.GitStageCompareStagedWithLocalAction"/>
    <action id="Git.Stage.Compare.Staged.Head" class="git4idea.index.actions.GitStageCompareStagedWithHeadAction"/>
    <action id="Git.Stage.Compare.Three.Versions" class="git4idea.index.actions.GitStageCompareThreeVersionsAction"/>
    <action id="Git.Stage.Stash.Files" class="git4idea.index.actions.GitStageStashFilesAction"/>

    <group id="Git.ChangesView.Conflicts">
      <action id="Git.ChangesView.Merge" class="git4idea.merge.GitMergeConflictAction" icon="AllIcons.Vcs.Merge"/>
      <action id="Git.ChangesView.AcceptTheirs" class="git4idea.merge.GitAcceptTheirsAction"/>
      <action id="Git.ChangesView.AcceptYours" class="git4idea.merge.GitAcceptYoursAction"/>
      <separator/>

      <add-to-group group-id="ChangesViewPopupMenu" anchor="first"/>
    </group>

    <action id="Git.Stash.Silently" class="git4idea.index.actions.GitStashSilentlyAction" icon="AllIcons.Vcs.Stash"/>

    <group id="Git.Stage.Configure" popup="true">
      <separator key="separator.Git.Stage.Configure.display.as"/>
      <reference id="Git.Stage.Enable"/>
      <reference id="Git.Stage.Disable"/>
      <add-to-group group-id="CommitView.GearActions"/>
    </group>

    <group id="Git.Stage.Toolbar">
      <reference id="Diff.ShowDiff"/>
      <reference id="ChangesView.Refresh"/>
      <reference id="Git.Stage.Add.Tracked"/>
      <reference id="Git.Stash.Silently"/>
      <group id="Git.Stage.Ui.Settings" icon="AllIcons.Actions.GroupBy" popup="true">
        <reference id="ChangesView.GroupBy"/>
        <separator key="separator.show"/>
        <reference id="Git.Stage.ToggleIgnored"/>
      </group>
    </group>
    <group id="Git.Stage.Tree.Menu">
      <reference id="Git.Stage.Merge"/>
      <reference id="Git.Stage.AcceptTheirs"/>
      <reference id="Git.Stage.AcceptYours"/>
      <reference id="Git.Stage.Add"/>
      <reference id="Git.Stage.Add.No.Content"/>
      <reference id="Git.Stage.Reset"/>
      <reference ref="Git.Stage.Stash.Files"/>
      <reference id="Git.Stage.Revert"/>
      <reference id="$Delete"/>
      <reference id="Git.Ignore.File"/>
      <separator/>
      <reference id="Diff.ShowDiff"/>
      <reference ref="Diff.ShowStandaloneDiff"/>
      <reference id="Git.Stage.ThreeSideDiff"/>
      <reference ref="EditSource"/>
      <reference ref="ChangesView.CreatePatchFromChanges"/>
      <reference ref="ChangesView.CreatePatchToClipboard"/>
      <separator/>
      <reference id="Vcs.ShowTabbedFileHistory"/>
      <reference id="LocalHistory"/>
    </group>
    <group id="Git.Stage.Local.File.Menu" popup="false">
      <reference id="Git.Stage.Show.Staged"/>
      <reference id="Git.Stage.Compare.Local.Staged"/>
      <reference id="Git.Stage.Compare.Three.Versions"/>

      <add-to-group group-id="Git.ContextMenu" relative-to-action="ChangesView.RevertFiles" anchor="after"/>
    </group>
    <group id="Git.Stage.Index.File.Menu" popup="true" class="git4idea.index.actions.GitStageIndexFileMenuGroup">
      <reference id="Git.Stage.Show.Local"/>
      <reference id="Git.Stage.Compare.Staged.Head"/>
      <reference id="Git.Stage.Compare.Staged.Local"/>
      <reference id="Git.Stage.Compare.Three.Versions"/>

      <add-to-group group-id="EditorPopupMenu"/>
    </group>

    <action id="Git.Stash.Pop" class="git4idea.stash.ui.GitPopStashAction"/>
    <action id="Git.Stash.Apply" class="git4idea.stash.ui.GitApplyStashAction"/>
    <action id="Git.Stash.UnstashAs" class="git4idea.stash.ui.GitUnstashAsAction"/>
    <action id="Git.Stash.Drop" class="git4idea.stash.ui.GitDropStashAction" use-shortcut-of="$Delete"/>
    <action id="Git.Show.Stash" class="git4idea.stash.ui.GitShowStashToolWindowTabAction"/>
    <action id="Git.Stash.Refresh" class="git4idea.stash.ui.GitRefreshStashesAction" icon="AllIcons.Actions.Refresh"/>

    <group id="Git.Stash.Operations.ContextMenu" class="git4idea.stash.ui.GitStashOperationsGroup">
      <reference id="Git.Stash.Pop"/>
      <reference id="Git.Stash.Apply"/>
      <reference id="Git.Stash.UnstashAs"/>
      <reference id="Git.Stash.Drop"/>
      <add-to-group group-id="Vcs.SavedPatches.ContextMenu" anchor="first"/>
    </group>

    <group id="Git.Stash.ChangesBrowser.ContextMenu" class="git4idea.stash.ui.GitStashOperationsGroup">
      <reference ref="Vcs.ShowDiffWithLocal.Before"/>
      <reference ref="Vcs.EditSource"/>
      <reference ref="Vcs.OpenRepositoryVersion"/>
      <reference ref="Vcs.ApplySelectedChanges"/>
      <add-to-group group-id="Vcs.SavedPatches.ChangesBrowser.ContextMenu"/>
    </group>

    <group id="Git.Experimental.Branch.Popup.Actions">
      <reference ref="Vcs.UpdateProject"/>
      <reference ref="CheckinProject"/>
      <reference ref="Git.Commit.Stage"/>
      <reference ref="Vcs.Push"/>
    </group>

    <group id="Vcs.ToolbarWidget.CreateRepository" searchable="false">
      <group id="Vcs.ToolbarWidget.ShareProject" popup="true" searchable="false">
        <reference id="Start.Use.Vcs"/>
      </group>
      <reference id="Git.Init"/>
      <separator/>
      <reference id="LocalHistory.ShowHistory"/>
    </group>

    <group id="MainToolbarVCSGroup">
      <action id="main.toolbar.git.Branches" class="git4idea.ui.toolbar.GitToolbarWidgetAction" />
      <action id="main.toolbar.git.MergeRebase" class="git4idea.ui.toolbar.GitMergeRebaseWidget"/>
      <add-to-group group-id="MainToolbarLeft" relative-to-action="MainToolbarGeneralActionsGroup" anchor="before"/>
    </group>

    <group id="GitMergeRebaseWidgetGroup">
      <reference id="Git.ResolveConflicts"/>
      <reference id="Git.Rebase.Continue"/>
      <reference id="Git.Rebase.Abort"/>
      <reference id="Git.Merge.Abort"/>
      <reference id="Git.CherryPick.Abort"/>
      <reference id="Git.Revert.Abort"/>
    </group>

    <group id="GitMainToolbarQuickActions" searchable="false" popup="false">
      <add-to-group group-id="MainToolbarQuickActions" relative-to-action="MainToolbarQuickActions.Run" anchor="after"/>
      <separator key="MainToolbarQuickActions.vcs.separator"/>
      <group id="MainToolbarQuickActions.VCS" class="com.intellij.ide.ui.customization.ToolbarQuickActionsGroup" searchable="false" popup="false"/>
    </group>

    <group id="Git.Hosting.Open.In.Browser.Group" popup="false">
      <add-to-group group-id="RevealGroup"/>
      <add-to-group group-id="Vcs.Log.ContextMenu" anchor="last"/>
      <add-to-group group-id="VcsHistoryActionsGroup" anchor="last"/>
      <add-to-group group-id="VcsHistoryActionsGroup.Toolbar"/>
      <add-to-group group-id="VcsSelectionHistoryDialog.Popup" anchor="last"/>
    </group>

    <group id="Git.Hosting.Copy.Link.Group" popup="false">
      <add-to-group group-id="CopyFileReference"/>
      <add-to-group group-id="Copy.Paste.Special" relative-to-action="CopyReference" anchor="after"/>
    </group>
  </actions>

  <extensions defaultExtensionNs="com.intellij">
    <advancedSetting id="git.clone.recurse.submodules" default="true" groupKey="advanced.settings.git"/>
    <advancedSetting id="git.read.content.with" enumClass="git4idea.util.GitTextConvMode" default="FILTERS"
                     groupKey="advanced.settings.git"/>
    <advancedSetting id="git.use.push.force.with.lease" default="true" groupKey="advanced.settings.git"/>
    <advancedSetting id="git.update.incoming.outgoing.info" default="true" groupKey="advanced.settings.git"/>
    <advancedSetting id="git.use.schannel.on.windows" default="false" groupKey="advanced.settings.git" os="windows"/>
    <advancedSetting id="git.branch.cleanup.symbol" default="-" groupKey="advanced.settings.git"/>
    <registryKey key="git.execute.with.mediator" defaultValue="true"
                 description="Use wrapper executable on Windows to support soft Git process cancellation."/>
    <registryKey key="git.blocking.read" defaultValue="true"
                 description="Use blocking mode for git process output reader."/>
    <registryKey key="git.allow.stderr.to.stdout.mixing" defaultValue="false"
                 description="Enables legacy hack for git integration, when some messages from stderr are handled as if they came from stdout."/>
    <registryKey key="git.execution.trace" defaultValue="0"
                 description="Bitmask to control git logging of the commands executed by the IDE. Specified as int.\n
                              (0)  00000 - logging disabled\n
                              (31) 11111 - all categories enabled\n
                              (29) 11101 - the one you might want\n
                              (1)  00001 - GIT_TRACE\n
                              (2)  00010 - GIT_TRACE_PACK_ACCESS\n
                              (4)  00100 - GIT_TRACE_PACKET\n
                              (8)  01000 - GIT_TRACE_PERFOMANCE\n
                              (16) 10000 - GIT_TRACE_SETUP"/>
    <registryKey key="git.file.history.full" defaultValue="true"
                 description="Adds &quot;--full-history --simplify-merges&quot; to git log arguments when retrieving history for a file.
                              This may sometimes result in empty merges being shown in the file history.
                              However, skipping this arguments hides some side branches if the end result is the same."/>
    <registryKey key="git.refresh.vfs.total" defaultValue="false"
                 description="If set to true, the whole Git repository root will be refreshed after performing a Git operation.
                              Otherwise only the affected files will be refreshed.
                              Affects only a subset of Git operations.
                              The option is needed to debug possible &quot;incomplete VFS refresh&quot; reports, if they appear."/>
    <registryKey key="git.log.use.index.for.picked.commits.highlighting" defaultValue="true"
                 description="Find cherry-picked commits not only looking at patches using 'git cherry'
                              but also by matching commit author, author time and &quot;cherry picked from commit &lt;hash&gt;&quot; suffix."/>
    <registryKey key="git.log.fast.picked.commits.highlighting" defaultValue="true"
                 description="Find cherry-picked commits not looking at patches using 'git cherry'
                              but by matching commit author, author time and commit message. This allows to find commits that were cherry-picked with conflicts
                              and without adding &quot;cherry picked from commit &lt;hash&gt;&quot; suffix. Requires &quot;git.log.use.index.for.picked.commits.highlighting&quot; set to true."/>
    <registryKey key="git.parallel.fetch.threads" defaultValue="-3"
                 description="Number of threads to call git fetch in parallel.\n
                              Set to 1 to execute sequentially.\n
                              Set to -1 to use the number of CPU cores.\n
                              Set to -2 to start as many threads, as there are repositories in the project.\n
                              Set to -3 to start as many threads, as there are repositories, but not more than 2 * number of cores.\n
                              By default, SSH supports up to 10 multiplexed connections, thus number of threads will be limited by 10 despite this value."/>
    <registryKey key="git.use.shell.script.on.windows" defaultValue="true"
                 description="Use workaround for Native SSH support in Git. Batch file cannot properly handle arguments with newlines when used as SSH_ASKPASS."/>
    <registryKey key="git.use.setsid.for.native.ssh" defaultValue="true"
                 description="Wrap 'git' process with 'setsid' for remote operations.
                              This fixes issue with SSH_ASKPASS if IDE is executed from terminal or under DM/WM that pass system TTY from Xorg to GUI applications. IDEA-201054"/>
    <registryKey key="git.use.setsid.wait.for.wsl.ssh" defaultValue="true"
                 description="Wrap 'git' process with 'setsid -w' for remote operations with WSL executable."/>
    <registryKey key="git.wsl.exe.executable.no.shell" defaultValue="false"
                 description="Run git process for WSL executables without wrapping into a shell command."/>
    <registryKey key="git.wsl.exe.executable.login.shell" defaultValue="false"
                 description="Run git process for WSL executables using login shell command."/>
    <registryKey key="git.wsl.exe.executable.detect.lang.by.env" defaultValue="true"
                 description="Run git process for WSL executables using LANG detected from ENV."/>
    <registryKey key="git.use.no.optional.locks" defaultValue="true"
                 description="Use 'GIT_OPTIONAL_LOCKS' env variable to avoid taking unnecessary locks in git. Ex: to avoid 'git status' to interfere with 'git rebase' process in terminal."/>
    <registryKey key="git.merge.conflicts.toolwindow" defaultValue="false"
                 description="Show dedicated toolwindow for git merge conflicts"/>
    <registryKey key="git.update.project.info.as.log" defaultValue="true"
                 description="If enabled, Update Project for Git is followed by the list of commits, instead of the list of updated files."/>
    <registryKey key="git.enable.stage.line.status.tracker" defaultValue="true"
                 description="Show staged and unstaged changes in gutter markers." restartRequired="true"/>
    <registryKey key="git.shelve.load.base.in.batches" defaultValue="1000"
                 description="If set to a value &gt; 0, load base contents for shelving in batches: by reading the given number of files at once. If set to -1, contents are loaded as usual, one by one."/>
    <registryKey key="git.allow.wsl1.executables" defaultValue="false"
                 description="If set to false, IDE will ignore configured WSL1 executables. See IDEA-242469"/>
    <registryKey key="git.detect.wsl.executables" defaultValue="true"
                 description="Search for available executables in WSL on Windows"/>
    <registryKey key="git.enable.stash.toolwindow" defaultValue="true"
                 description="Show toolwindow tab with stashes"/>
    <registryKey key="git.can.use.restore.command" defaultValue="true"
                 description="Use 'git restore --staged --worktree --source=HEAD -- paths' instead of 'git reset --hard' to speed up worktree cleanup."/>
    <registryKey key="git.stage.separate.undo.stack" defaultValue="true"
                 description="Do not record stage operations in the undo stack of the document"/>
    <registryKey key="git.stage.navigate.to.index.file" defaultValue="false"
                 description="Navigate to the staging area content from diff instead of the local file"/>
    <registryKey key="git.stage.enable.commit.all" defaultValue="true"
                 description="Deprecated. Use the option in the Commit tool window 'Options' menu.
                 When no changes are staged, stage and commit all changes in the project"/>
    <registryKey key="git.branches.panel.persist.tree.state" defaultValue="true"
                 description="Persist branches panel tree state between restarts"/>
    <registryKey key="git.branches.tree.popup.expand.node.on.single.click" defaultValue="true"
                 description="If true, then tree nodes will be expanded on single click, otherwise expand as usual JTree"/>
    <registryKey key="git.do.not.swap.merge.conflict.sides" defaultValue="false"
                 description="Do not inverse 'ours' and 'theirs' conflict sides during rebase"/>
    <registryKey key="git.recent.checkout.branches.reflog.entries.count" defaultValue="50"
                 restartRequired="true"
                 description="Max amount of entry to process from Git reflog to parse recently checkout branches"/>
    <registryKey key="git.show.recent.checkout.branches" defaultValue="5"
                 description="Max count of recently checkout branches to show (e.g. in branches tree popup)"/>
    <registryKey key="git.log.index.inexact.renames" description="Detect and store inexact renames during indexing" defaultValue="false"/>

    <search.projectOptionsTopHitProvider implementation="git4idea.config.GitOptionsTopHitProvider"/>
    <vcs name="Git" vcsClass="git4idea.GitVcs" displayName="Git" administrativeAreaName=".git"/>
    <checkoutProvider implementation="git4idea.checkout.GitCheckoutProvider" order="first"/>
    <vcs.checkoutProcessor implementation="git4idea.checkout.GitCheckoutProcessor"/>
    <vcsRootChecker implementation="git4idea.roots.GitRootChecker"/>
    <vcsIgnoreChecker implementation="git4idea.ignore.GitIgnoreChecker"/>
    <vcsRepositoryCreator implementation="git4idea.repo.GitRepositoryCreator"/>
    <vcsPopupProvider implementation="git4idea.actions.GitQuickListContentProvider"/>
    <vcsCheckinHandlerFactory implementation="git4idea.checkin.GitUserNameCheckinHandlerFactory"/>
    <vcsCheckinHandlerFactory implementation="git4idea.checkin.GitCRLFCheckinHandlerFactory"/>
    <vcsCheckinHandlerFactory implementation="git4idea.checkin.GitLargeFileCheckinHandlerFactory"/>
    <vcsCheckinHandlerFactory implementation="git4idea.checkin.GitDetachedRootCheckinHandlerFactory"/>
    <vcsCheckinHandlerFactory implementation="git4idea.checkin.GitFileNameCheckinHandlerFactory"/>
    <vcsCheckinHandlerFactory implementation="git4idea.rebase.GitRebaseCheckinHandlerFactory"/>
    <checkinHandlerFactory implementation="git4idea.checkin.GitSkipHooksCommitHandlerFactory" order="last"/>
    <unresolvedMergeCheckProvider implementation="git4idea.checkin.GitUnresolvedMergeCheckProvider"/>
    <logProvider implementation="git4idea.log.GitLogProvider"/>
    <vcsLogCommitStatusProvider implementation="git4idea.log.GitCommitSignatureStatusProvider"/>
    <vcsLogFileHistoryHandler implementation="git4idea.history.GitLogHistoryHandler" order="last"/>
    <vcsChangesViewRefresher implementation="git4idea.changes.GitChangesViewRefresher"/>
    <vcs.branchStateProvider implementation="git4idea.branch.GitBranchStateProvider"/>
    <pushSupport implementation="git4idea.push.GitPushSupport"/>
    <cherryPicker implementation="git4idea.cherrypick.GitCherryPicker"/>
    <vcsAnnotationGutterActionProvider implementation="git4idea.actions.GitToggleAnnotationOptionsActionProvider"/>
    <statistics.projectUsagesCollector implementation="git4idea.GitStatisticsCollector"/>
    <statistics.counterUsagesCollector implementationClass="git4idea.GitBranchesUsageCollector"/>
    <statistics.counterUsagesCollector implementationClass="git4idea.GitStashUsageCollector"/>
    <statistics.counterUsagesCollector implementationClass="git4idea.GitRefreshUsageCollector"/>
    <statistics.counterUsagesCollector implementationClass="git4idea.GitOperationsCollector"/>
    <statistics.notificationIdsHolder implementation="git4idea.GitNotificationIdsHolder"/>
    <statistics.actionIdsHolder implementation="git4idea.GitActionIdsHolder"/>
    <vcsRepositoryInitializer implementation="git4idea.repo.GitRepositoryInitializer"/>
    <gitRepositoryInitializer implementation="git4idea.repo.GitRepositoryInitializerImpl"/>
    <gitSilentFileAdder implementation="git4idea.repo.GitSilentFileAdderProviderImpl"/>
    <openapi.vcs.changes.actions.diff.ChangeDiffRequestProvider
      implementation="git4idea.diff.GitSubmoduleDiffRequestProvider"/>
    <vcs.ignoredFilesHolder implementation="git4idea.repo.GitIgnoredFilesHolder$Provider"/>
    <vcs.unversionedFilesHolder implementation="git4idea.repo.GitUnversionedFilesHolder$Provider"/>
    <projectConfigurable id="vcs.Git" key="settings.git.option.group" instance="git4idea.config.GitVcsPanel"
                         parentId="project.propVCSSupport.Mappings" groupWeight="-500"/>
    <generalVcsSettingsExtension instance="git4idea.rebase.log.GitLogCommitEditingConfigurable"
                                 location="confirmations"/>

    <projectService serviceImplementation="git4idea.config.GitVcsSettings" configurationSchemaKey="versionControl.git"/>
    <projectService serviceImplementation="git4idea.config.GitRebaseSettings"/>
    <projectService serviceImplementation="git4idea.config.GitMergeSettings"/>
    <projectService serviceImplementation="git4idea.config.GitPullSettings"/>
    <projectService serviceImplementation="git4idea.config.GitSharedSettings"/>
    <projectService serviceInterface="git4idea.branch.GitBrancher"
                    serviceImplementation="git4idea.branch.GitBrancherImpl"/>
    <projectService serviceInterface="git4idea.fetch.GitFetchSupport" serviceImplementation="git4idea.fetch.GitFetchSupportImpl"/>

    <applicationService serviceImplementation="git4idea.config.GitVcsApplicationSettings"/>
    <applicationService serviceInterface="git4idea.commands.GitHttpAuthService"
                        serviceImplementation="git4idea.commands.GitHttpAuthServiceImpl"/>
    <httpRequestHandler implementation="git4idea.commands.GitAskPassExternalProcessRest"/>
    <httpRequestHandler implementation="git4idea.rebase.GitRebaseEditorExternalProcessRest"/>

    <applicationService serviceImplementation="git4idea.config.SSHConnectionSettings"/>
    <applicationService serviceImplementation="git4idea.remote.GitRememberedInputs"/>
    <applicationService serviceInterface="git4idea.commands.Git"
                        serviceImplementation="git4idea.commands.GitImpl"/>
    <applicationService serviceImplementation="git4idea.config.GitExecutableManager"/>
    <applicationService serviceImplementation="git4idea.DialogManager"/>
    <applicationService serviceImplementation="git4idea.log.GitExternalLogTabsProperties"/>

    <applicationService serviceImplementation="git4idea.index.ui.GitStageUiApplicationSettings"/>

    <vcs.taskHandler implementation="git4idea.GitTaskHandler"/>

    <logHighlighterFactory implementation="git4idea.branch.DeepComparator$Factory"/>

    <ignoredFileContentProvider implementation="git4idea.ignore.GitIgnoredFileContentProvider"/>
    <openapi.vcs.changes.vcsPreservingExecutor implementation="git4idea.util.GitPreservingExecutor"/>
    <editorNotificationProvider implementation="git4idea.conflicts.MergeConflictResolveUtil$NotificationProvider"/>
    <codeInsight.linkHandler prefix="#git_commit/" handlerClass="git4idea.log.GitCommitTooltipLinkHandler"/>

    <!-- Git ignore lang -->
    <fileType language="GitIgnore" extensions="gitignore" fieldName="INSTANCE" name="GitIgnore file"
              implementationClass="git4idea.ignore.lang.GitIgnoreFileType"/>
    <lang.parserDefinition language="GitIgnore"
                           implementationClass="com.intellij.openapi.vcs.changes.ignore.lang.IgnoreParserDefinition"/>
    <codeInsight.lineMarkerProvider language="GitIgnore"
                                    implementationClass="com.intellij.openapi.vcs.changes.ignore.codeInsight.IgnoreDirectoryMarkerProvider"/>
    <lang.braceMatcher language="GitIgnore" implementationClass="com.intellij.openapi.vcs.changes.ignore.lang.IgnoreBraceMatcher"/>
    <lang.commenter language="GitIgnore" implementationClass="com.intellij.openapi.vcs.changes.ignore.lang.IgnoreCommenter"/>
    <!--END Git ignore lang-->

    <!-- Git exclude lang -->
    <fileType language="GitExclude" fileNames="exclude" fieldName="INSTANCE" name="GitExclude file"
              implementationClass="git4idea.ignore.lang.GitExcludeFileType"/>
    <lang.fileViewProviderFactory language="GitExclude"
                                  implementationClass="git4idea.ignore.lang.GitExcludeViewProviderFactory"/>
    <lang.parserDefinition language="GitExclude"
                           implementationClass="com.intellij.openapi.vcs.changes.ignore.lang.IgnoreParserDefinition"/>
    <codeInsight.lineMarkerProvider language="GitExclude"
                                    implementationClass="com.intellij.openapi.vcs.changes.ignore.codeInsight.IgnoreDirectoryMarkerProvider"/>
    <lang.braceMatcher language="GitExclude" implementationClass="com.intellij.openapi.vcs.changes.ignore.lang.IgnoreBraceMatcher"/>
    <lang.commenter language="GitExclude" implementationClass="com.intellij.openapi.vcs.changes.ignore.lang.IgnoreCommenter"/>
    <!--END Git exclude lang-->

    <backgroundPostStartupActivity implementation="git4idea.ignore.GitIgnoreInStoreDirGeneratorActivity"/>
    <backgroundPostStartupActivity implementation="git4idea.config.GitSetupProjectConfig"/>

    <registryKey key="git.update.incoming.info.time" defaultValue="20"
                 description="Time period (in minutes) between incoming commits checks." restartRequired="true"/>

    <registryKey key="git.commit.completion.fixup.squash" defaultValue="true"
                 description="Provide completion for fixup and squash prefixes in commit message field" restartRequired="false"/>

    <registryKey key="git.interactive.rebase.collect.entries.using.log" defaultValue="true"
                 description="Use Log to collect Rebase Entries"/>

    <registryKey key="git.search.everywhere.commit.by.message" defaultValue="true"
                 description="Use Git log index to lookup commits by message in Search Everywhere" restartRequired="false"/>

    <registryKey key="git.push.upto.commit.with.head.reference" defaultValue="false"
                 description="Detect HEAD relative reference while pushing up to selected commit to the current branch"
                 restartRequired="false"/>

    <vcs.actions.ScheduleForAdditionActionExtension implementation="git4idea.actions.GitAdd"/>
    <completion.contributor language="TEXT" implementationClass="git4idea.commit.GitCommitCompletionContributor"
                            order="first, before commitCompletion"/>
    <lookup.charFilter implementation="git4idea.commit.GitCommitCompletionCharFilter"/>

    <customVcsLogUiFactoryProvider implementation="git4idea.ui.branch.dashboard.BranchesInGitLogUiFactoryProvider"/>
    <virtualFileSystem key="git-compare-branches" implementationClass="git4idea.branch.GitCompareBranchesVirtualFileSystem"/>

    <statusBarWidgetFactory id="light.edit.git" implementation="git4idea.light.LightGitStatusBarWidgetFactory"/>
    <lightEditTabAttributesProvider implementation="git4idea.light.LightGitTabAttributesProvider"/>
    <statusBarWidgetFactory id="git"
                            implementation="git4idea.ui.branch.GitBranchWidget$Factory"
                            order="after CodeStyleStatusBarWidget,before ReadOnlyAttribute"/>

    <vcsBulkMovesOnlyChangesFilter implementation="git4idea.GitBulkMovesOnlyChangesFilter"/>

    <editorNotificationProvider implementation="git4idea.ui.GitEditorPromo" order="first"/>

    <changesViewContent id="git.stage" tabName="Staging Area" className="git4idea.index.GitStageContentProvider"
                        predicateClassName="git4idea.index.GitStageContentVisibilityPredicate"
                        preloaderClassName="git4idea.index.GitStageContentPreloader"
                        displayNameSupplierClassName="git4idea.index.GitStageDisplayNameSupplier"
                        isInCommitToolWindow="true"/>
    <vcs.changes.changesViewNodeAction implementation="git4idea.merge.GitChangesViewNodeAction"/>

    <projectService serviceImplementation="git4idea.index.GitStageTracker"/>
    <fileDocumentManagerListener implementation="git4idea.index.GitStageFileDocumentManagerListener"/>
    <editorFactoryDocumentListener implementation="git4idea.index.GitStageDocumentListener"/>
    <openapi.vcs.impl.LocalLineStatusTrackerProvider implementation="git4idea.index.GitStageLineStatusTrackerProvider"/>
    <vcsChangesViewRefresher implementation="git4idea.index.actions.GitStageChangesViewRefresher"/>

    <backgroundPostStartupActivity implementation="git4idea.index.GitStageStartupActivity"/>

    <virtualFileSystem implementationClass="git4idea.index.vfs.GitIndexFileSystem" key="gitIndexFs" physical="true"/>

    <vcs.baseContentProvider implementation="git4idea.index.vfs.GitIndexVirtualFileBaseContentProvider"/>
    <editorNotificationProvider implementation="git4idea.index.vfs.GitIndexVirtualFileEditorNotificationProvider"/>
    <editorTabTitleProvider implementation="git4idea.index.vfs.GitIndexVirtualFileTabTitleProvider"/>
    <vcs.fileStatusProvider implementation="git4idea.index.vfs.GitIndexVirtualFileStatusProvider"/>

    <diff.actions.ShowDiffAction.ExtensionProvider implementation="git4idea.index.actions.GitStageDiffAction"/>
    <diff.actions.ShowStandaloneDiffAction.ExtensionProvider implementation="git4idea.index.actions.GitStageDiffAction"/>
    <openapi.vcs.changes.actions.CreatePatchFromChangesAction.Dialog.ExtensionProvider
      implementation="git4idea.index.actions.GitStageCreatePatchActionProvider$Dialog"/>
    <openapi.vcs.changes.actions.CreatePatchFromChangesAction.Clipboard.ExtensionProvider
      implementation="git4idea.index.actions.GitStageCreatePatchActionProvider$Clipboard"/>

    <actionPromoter implementation="git4idea.index.actions.GitIndexActionPromoter"/>

    <changesViewContent id="git.stash" tabName="Stash" className="git4idea.stash.ui.GitStashContentProvider"
                        predicateClassName="git4idea.stash.ui.GitStashContentVisibilityPredicate"
                        preloaderClassName="git4idea.stash.ui.GitStashContentPreloader"
                        displayNameSupplierClassName="git4idea.stash.ui.GitStashDisplayNameSupplier"
                        isInCommitToolWindow="true"/>
    <projectService serviceImplementation="git4idea.stash.GitStashTracker"/>
    <postStartupActivity implementation="git4idea.stash.ui.GitStashStartupActivity"/>

    <vcs.consoleFolding implementation="git4idea.console.GitConsoleFolding"/>
    <console.folding implementation="git4idea.console.GitProgressOutputConsoleFolding"/>

    <advancedSetting default="false" id="git.search.everywhere.tab.enabled" groupKey="advanced.settings.git"/>
    <searchEverywhereContributor implementation="git4idea.search.GitSearchEverywhereContributor$Factory"/>
    <projectOriginInfoProvider implementation="git4idea.repo.GitProjectOriginInfoProvider"/>

    <warmupConfigurator implementation="git4idea.log.GitWarmupConfigurator"/>

    <postStartupActivity implementation="git4idea.repo.GitCommitTemplateTracker$GitCommitTemplateTrackerStartupActivity"/>

    <vcs.commitMessageProvider implementation="git4idea.commit.GitTemplateCommitMessageProvider" order="first"/>
    <jbProtocolRevisionResolver implementation="git4idea.GitNavigateRevisionResolver"/>

    <toolbarQuickAction implementationClass="git4idea.ui.toolbar.UpdateQuickAction" listGroupID="MainToolbarQuickActions.VCS"/>
    <toolbarQuickAction implementationClass="git4idea.ui.toolbar.CommitQuickAction" listGroupID="MainToolbarQuickActions.VCS"/>
    <toolbarQuickAction implementationClass="git4idea.ui.toolbar.PushQuickAction" listGroupID="MainToolbarQuickActions.VCS"/>
    <toolbarQuickAction implementationClass="git4idea.ui.toolbar.DiffQuickAction" listGroupID="MainToolbarQuickActions.VCS"/>
    <toolbarQuickAction implementationClass="git4idea.ui.toolbar.HistoryQuickAction" listGroupID="MainToolbarQuickActions.VCS"/>
    <toolbarQuickAction implementationClass="git4idea.ui.toolbar.RollbackQuickAction" listGroupID="MainToolbarQuickActions.VCS"/>

    <changesViewContent tabName="Git Conflicts"
                        className="git4idea.conflicts.GitConflictsToolWindowManager$ContentProvider"
                        predicateClassName="git4idea.conflicts.GitConflictsToolWindowManager$ContentPredicate"
                        preloaderClassName="git4idea.conflicts.GitConflictsToolWindowManager$ContentPreloader"
                        displayNameSupplierClassName="git4idea.conflicts.GitConflictsToolWindowManager$DisplayNameSupplier"
                        isInCommitToolWindow="true"/>

    <registryKey os="windows" key="git.version.check.minutes" defaultValue="1"
                 restartRequired="true"
                 description="Amount of time in minutes to check new Git version after IDE inactivity.\n
                             -1 to disable check."/>
    <postStartupActivity os="windows" implementation="git4idea.config.GitNewVersionChecker$Starter"/>
    <settingsEntryPointActionProvider os="windows" implementation="git4idea.config.GitVersionUpdateSettingsEntryProvider"/>

    <history.activityPresentationProvider implementation="git4idea.GitActivityPresentationProvider"/>
  </extensions>

  <extensions defaultExtensionNs="Git4Idea">
    <gitRawAnnotationProvider implementation="git4idea.annotate.GitAnnotationProvider$DefaultGitAnnotationProvider"/>
  </extensions>

  <extensionPoints>
    <extensionPoint interface="git4idea.remote.GitHttpAuthDataProvider" name="GitHttpAuthDataProvider" dynamic="true"/>
    <extensionPoint interface="git4idea.remote.GitRepositoryHostingService" name="gitRepositoryHostingService" dynamic="true"/>
    <extensionPoint interface="git4idea.checkin.GitCheckinExplicitMovementProvider"
                    name="GitCheckinExplicitMovementProvider"
                    dynamic="true"/>
    <extensionPoint interface="git4idea.fetch.GitFetchHandler" name="gitFetchHandler" dynamic="true"/>
    <extensionPoint interface="git4idea.config.GitProtectedBranchProvider" name="gitProtectedBranchProvider" dynamic="true"/>
    <extensionPoint interface="git4idea.update.GitPostUpdateHandler" name="gitPostUpdateHandler" dynamic="true"/>
    <extensionPoint interface="git4idea.ui.branch.GitCurrentBranchPresenter" name="gitCurrentBranchPresenter" dynamic="true"/>
    <extensionPoint interface="git4idea.instant.InstantGitTokenProvider" name="instantGitTokenProvider" dynamic="true"/>
    <extensionPoint interface="git4idea.annotate.GitAnnotationPerformanceListener" name="gitAnnotationPerformanceListener" dynamic="true"/>
    <extensionPoint interface="git4idea.annotate.GitAnnotationProvider$GitRawAnnotationProvider" name="gitRawAnnotationProvider"
                    dynamic="true" area="IDEA_PROJECT"/>
    <extensionPoint interface="git4idea.push.GitPushNotificationCustomizer"
                    name="gitPushNotificationCustomizer"
                    dynamic="true"
                    area="IDEA_PROJECT"/>
  </extensionPoints>

  <projectListeners>
    <listener class="git4idea.conflicts.GitConflictsToolWindowManager$MyStagingAreaListener"
              topic="git4idea.status.GitStagingAreaHolder$StagingAreaListener"
              activeInHeadlessMode="false"/>
    <listener class="git4idea.conflicts.MergeConflictResolveUtil$MyStagingAreaListener"
              topic="git4idea.status.GitStagingAreaHolder$StagingAreaListener"
              activeInHeadlessMode="false"/>
    <listener class="git4idea.conflicts.GitConflictsToolWindowManager$MyRepositoryListener"
              topic="com.intellij.dvcs.repo.VcsRepositoryMappingListener"
              activeInHeadlessMode="false"/>
    <listener class="git4idea.ui.branch.GitBranchWidget$Listener"
              topic="com.intellij.dvcs.repo.VcsRepositoryMappingListener"
              activeInHeadlessMode="false" activeInTestMode="false"/>
    <listener class="git4idea.index.CommitModeListener" topic="com.intellij.vcs.commit.CommitModeManager$CommitModeListener"
              activeInHeadlessMode="false" activeInTestMode="false"/>
    <listener class="git4idea.actions.GitQuickActionsToolbarPopup$MyGitRepositoryListener"
              topic="com.intellij.dvcs.repo.VcsRepositoryMappingListener"
              activeInHeadlessMode="false" activeInTestMode="false"/>
    <listener class="git4idea.ui.branch.GitBranchWidget$MyExperimentalToolbarStateListener"
              topic="com.intellij.ide.navigationToolbar.experimental.ExperimentalToolbarStateListener"
              activeInHeadlessMode="false" activeInTestMode="false"/>
    <listener class="git4idea.ui.branch.GitBranchWidget$SettingsListener"
              activeInHeadlessMode="false" activeInTestMode="false"
              topic="com.intellij.ide.ui.UISettingsListener"/>
  </projectListeners>
</idea-plugin>
 lib/vcs-git.jar lib/git4idea-rt.jar  
vcs-github   <idea-plugin package="com.intellij.vcs.github.ultimate" xmlns:xi="http://www.w3.org/2001/XInclude">
  <name>GitHub</name>
  <id>org.jetbrains.plugins.github</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <vendor>JetBrains</vendor>
  <category>Version Controls</category>
  <description>
    <![CDATA[
      Provides integration with <a href="https://github.com/">GitHub</a>.
        <ul>
        <li>Specify your GitHub account to access all of your repositories from the IDE.</li>
        <li>Clone repositories, create and review pull requests, create gists, and much more.</li>
        <li>Create GitHub actions and workflows</li>
        </ul>
        <p>To configure, open <b>Settings / Preferences</b> and go to Version Control | GitHub.</p>
        <p>Requires the Git plugin.</p>
      ]]>
  </description>

  <content>
    <module name="intellij.vcs.github.ultimate/docker"/>
  </content>
  <dependencies>
    <plugin id="Git4Idea"/>
    <plugin id="org.jetbrains.plugins.yaml"/>
    <plugin id="com.intellij.modules.ultimate"/>
  </dependencies>

  <resource-bundle>
    messages.GithubUltimateBundle
  </resource-bundle>

  <xi:include href="/META-INF/github-core-config.xml" xpointer="xpointer(/idea-plugin/*)"/>

  <extensions defaultExtensionNs="com.intellij">
    <fileType name="GithubExpression"
              language="GithubExpressionLanguage"
              fieldName="INSTANCE"
              extensions="ghe"
              implementationClass="com.intellij.vcs.github.ultimate.expression.lang.GithubExpressionFileType"
    />

    <registryKey defaultValue="true"
                 description="Enable Github Expression language with its own completion contributor"
                 key="github.expression.language"/>

    <advancedSetting id="github.actions.support.enabled"
                     default="false"
                     groupKey="github.action.support"
                     bundle="messages.GithubUltimateBundle"
                     descriptionKey="github.actions.support.enabled.description"
    />

    <lang.parserDefinition language="GithubExpressionLanguage"
                           implementationClass="com.intellij.vcs.github.ultimate.expression.GithubExpressionParserDefinition"/>
    <lang.syntaxHighlighter language="GithubExpressionLanguage"
                            implementationClass="com.intellij.vcs.github.ultimate.expression.editor.GithubExpressionSyntaxHighlighter"/>
    <quoteHandler className="com.intellij.vcs.github.ultimate.expression.editor.GithubExpressionQuoteHandler" fileType="GithubExpression"/>
    <lang.braceMatcher language="GithubExpressionLanguage"
                       implementationClass="com.intellij.vcs.github.ultimate.expression.editor.GithubExpressionBraceMatcher"/>
    <completion.contributor implementationClass="com.intellij.vcs.github.ultimate.expression.editor.GithubExpressionCompletionContributor"
                            language="GithubExpressionLanguage"/>
    <multiHostInjector implementation="com.intellij.vcs.github.ultimate.expression.editor.GithubExpressionLanguageInjector"/>

    <!--CRON language for workflows-->
    <languageInjectionContributor language="yaml" implementationClass="com.intellij.vcs.github.ultimate.ide.editor.CronExpressionLanguageInjector"/>

    <!--From JSON schema catalog-->
    <psi.referenceContributor implementation="com.intellij.vcs.github.ultimate.action.GitHubActionFileReferenceContributor"
                              language="yaml" order="last"/>
    <psi.referenceContributor implementation="com.intellij.vcs.github.ultimate.workflow.WorkflowFileReferenceContributor"
                              language="yaml" order="last"/>
    <codeInsight.lineMarkerProvider implementationClass="com.intellij.vcs.github.ultimate.action.branding.BrandingColorLineMarkerProvider"
                                    language="yaml" order="last"/>
    <codeInsight.lineMarkerProvider implementationClass="com.intellij.vcs.github.ultimate.action.branding.BrandingIconLineMarkerProvider"
                                    language="yaml" order="last"/>
    <completion.contributor implementationClass="com.intellij.vcs.github.ultimate.action.context.GitHubActionContextCompletionContributor"
                            language="GithubExpressionLanguage"/>
    <completion.contributor implementationClass="com.intellij.vcs.github.ultimate.ide.editor.GitHubActionCompletionContributor"
                            language="yaml" order="first"/>
    <backgroundPostStartupActivity implementation="com.intellij.vcs.github.ultimate.ide.RefreshGithubActionsCacheOnStartup" order="last"/>

    <cachesInvalidator implementation="com.intellij.vcs.github.ultimate.cache.GitHubActionsCatalogInvalidator"/>

    <platform.backend.documentation.psiTargetProvider
      implementation="com.intellij.vcs.github.ultimate.ide.documentation.GithubActionPsiDocumentationTargetProvider"
    />
    <platform.backend.documentation.targetProvider
      implementation="com.intellij.vcs.github.ultimate.ide.documentation.GithubActionDocTargetProvider"
    />

    <localInspection language="yaml" bundle="messages.GithubUltimateBundle"
                     shortName="MandatoryParamsAbsent" level="ERROR"
                     key="github.action.inspections.invalid.params"
                     groupKey="github.action.inspections.group.name" enabledByDefault="true"
                     implementationClass="com.intellij.vcs.github.ultimate.ide.inspections.MandatoryParamsAbsentInspection"/>

    <localInspection language="yaml" bundle="messages.GithubUltimateBundle"
                     shortName="UndefinedParamsPresent" level="WARNING"
                     key="github.action.inspections.undefined.params"
                     groupKey="github.action.inspections.group.name" enabledByDefault="true"
                     implementationClass="com.intellij.vcs.github.ultimate.ide.inspections.UndefinedParamsPresentInspection"/>

    <localInspection language="GithubExpressionLanguage" bundle="messages.GithubUltimateBundle"
                     shortName="GithubFunctionSignatureValidation" level="WARNING"
                     key="github.action.inspections.std.lib.validation.name"
                     groupKey="github.action.inspections.group.name" enabledByDefault="true"
                     implementationClass="com.intellij.vcs.github.ultimate.expression.editor.GithubExpressionFunctionSignatureValidationInspection"/>

    <localInspection language="yaml" bundle="messages.GithubUltimateBundle"
                     shortName="UndefinedAction" level="WARNING"
                     key="github.action.inspections.undefined.action"
                     groupKey="github.action.inspections.group.name" enabledByDefault="true"
                     implementationClass="com.intellij.vcs.github.ultimate.ide.inspections.UndefinedActionInspection"/>

      <intentionAction order="last">
        <language>yaml</language>
        <bundleName>messages.GithubUltimateBundle</bundleName>
        <className>com.intellij.vcs.github.ultimate.ide.intentions.ReloadActionIntention</className>
        <skipBeforeAfter>true</skipBeforeAfter>
      </intentionAction>

    <vcsLogCommitStatusProvider implementation="com.intellij.vcs.github.ultimate.vcs.log.GitHubCommitStatusProvider"/>

  </extensions>

  <actions resource-bundle="messages.GithubUltimateBundle">
    <group id="com.intellij.github.actions.ide.new.file" icon="AllIcons.Vcs.Vendors.Github">
      <action id="com.intellij.vcs.github.ultimate.ide.actions.CreateWorkflowFileAction"
              class="com.intellij.vcs.github.ultimate.ide.actions.CreateWorkflowFileAction"
              icon="AllIcons.Vcs.Vendors.Github"
      />
      <action id="com.intellij.vcs.github.ultimate.ide.actions.CreateActionFileAction"
              class="com.intellij.vcs.github.ultimate.ide.actions.CreateActionFileAction"
              icon="AllIcons.Vcs.Vendors.Github"
      />
      <add-to-group group-id="NewGroup" anchor="last"/>
    </group>
  </actions>

  <applicationListeners>
    <listener class="com.intellij.vcs.github.ultimate.cache.listeners.LocalActionsFileChangeListener"
              topic="com.intellij.openapi.vfs.newvfs.BulkFileListener"/>
  </applicationListeners>

</idea-plugin>
 lib/vcs-github.jar  
vcs-gitlab  3<idea-plugin package="org.jetbrains.plugins.gitlab">
  <name>GitLab</name>
  <id>org.jetbrains.plugins.gitlab</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <vendor>JetBrains</vendor>
  <category>Version Controls</category>
  <description>
    <![CDATA[
      <p>Provides integration with GitLab.</p>

      <p><b>Access your GitLab projects without leaving the IDE</b><br>
      Log in to your GitLab account to access all your projects from the IDE.<br>
      Switch between multiple GitLab accounts to do your main job and contribute to your private projects.</p>

      <p><b>Clone projects</b><br>
      Clone a project that you want to contribute to directly from the IDE and create a new project based on it.</p>

      <p><b>Work with merge requests</b><br>
      Manage incoming merge requests:
      <li>Filter requests by state, author, assignee, reviewer, and label.
      <li>Keep up with the changes by checking the timeline.
      <li>Jump to a merge request on GitLab if necessary.<br><br>

      Review merge requests:
      <li>View the diff between the suggested changes and the base revision.
      <li>Leave your comments and suggestions.
      <li>Merge or close merge requests.<br><br>

      View and apply suggested changes:
      <li>Answer the comments to your merge request.
      <li>Close or save your merge request as a draft.</p>

      <p>To configure, open <b>Settings / Preferences</b> and go to Version Control | GitLab.</p>
      <p>Requires the Git plugin.</p>
      ]]>
  </description>

  <resource-bundle>messages.GitLabBundle</resource-bundle>

  <dependencies>
    <plugin id="com.intellij.modules.lang"/>
    <plugin id="Git4Idea"/>
    <plugin id="com.intellij.modules.json"/>
  </dependencies>

  <extensions defaultExtensionNs="com.intellij">
    <applicationService serviceImplementation="org.jetbrains.plugins.gitlab.authentication.accounts.GitLabPersistentAccounts"/>
    <applicationService serviceInterface="org.jetbrains.plugins.gitlab.authentication.accounts.GitLabAccountManager"
                        serviceImplementation="org.jetbrains.plugins.gitlab.authentication.accounts.PersistentGitLabAccountManager"/>
    <applicationService serviceInterface="org.jetbrains.plugins.gitlab.api.GitLabApiManager"
                        serviceImplementation="org.jetbrains.plugins.gitlab.api.GitLabApiManagerImpl"/>
    <applicationService serviceInterface="org.jetbrains.plugins.gitlab.GitLabServersManager"
                        serviceImplementation="org.jetbrains.plugins.gitlab.CachingGitLabServersManager"/>

    <projectService serviceInterface="org.jetbrains.plugins.gitlab.GitLabProjectsManager"
                    serviceImplementation="org.jetbrains.plugins.gitlab.GitLabProjectsManagerImpl"/>

    <projectConfigurable parentId="project.propVCSSupport.Mappings" groupWeight="-500"
                         instance="org.jetbrains.plugins.gitlab.GitLabSettingsConfigurable"/>

    <!--TODO: correct icon-->
    <toolWindow id="Merge Requests" icon="org.jetbrains.plugins.gitlab.GitlabIcons.GitLabToolWindow"
                anchor="left" doNotActivateOnStart="true"
                factoryClass="org.jetbrains.plugins.gitlab.mergerequest.ui.toolwindow.GitLabToolWindowFactory"
                canCloseContents="true"/>

    <virtualFileSystem key="gitlabmr" implementationClass="org.jetbrains.plugins.gitlab.mergerequest.file.GitLabVirtualFileSystem"/>
    <fileEditorProvider implementation="org.jetbrains.plugins.gitlab.mergerequest.file.GitLabFileEditorProvider"/>
    <diff.DiffExtension implementation="org.jetbrains.plugins.gitlab.mergerequest.diff.GitLabMergeRequestDiffExtension"/>
    <fileIconProvider implementation="org.jetbrains.plugins.gitlab.ui.GitLabCiConfigIconProvider"/>
    <iconMapper mappingFile="GitlabIconMappings.json"/>

    <vcsAnnotationGutterActionProvider implementation="org.jetbrains.plugins.gitlab.ui.action.GitLabAnnotationGutterActionProvider"/>

    <openapi.vcs.ui.cloneDialog.VcsCloneDialogExtension
      id="org.jetbrains.plugins.gitlab.ui.clone.GitLabCloneDialogExtension"
      implementation="org.jetbrains.plugins.gitlab.ui.clone.GitLabCloneDialogExtension"
      order="after org.jetbrains.plugins.github.ui.cloneDialog.GHECloneDialogExtension"/>

    <editorFactoryListener
      implementation="org.jetbrains.plugins.gitlab.mergerequest.ui.editor.GitLabMergeRequestEditorReviewController$InstallerListener"/>

    <registryKey key="vcs.gitlab.connect.silently"
                 description="Connect to GitLab repository without an explicit user action"
                 defaultValue="true"/>
    <registryKey defaultValue="1000" description="Request polling interval in milliseconds" key="gitlab.request.polling.interval.millis"/>
    <registryKey defaultValue="5" description="Request polling attempts" key="gitlab.request.polling.attempts"/>
    <registryKey defaultValue="62" description="Days until an entry in the viewed/not viewed state store is considered stale" key="gitlab.viewed.state.stale.timeout"/>
  </extensions>

  <extensions defaultExtensionNs="com.intellij.statistics">
    <applicationUsagesCollector
      implementation="org.jetbrains.plugins.gitlab.util.GitLabStatistics$GitLabAccountsStatisticsCollector"/>
    <counterUsagesCollector
      implementationClass="org.jetbrains.plugins.gitlab.util.GitLabStatistics$GitLabCountersCollector"/>
    <notificationIdsHolder
      implementation="org.jetbrains.plugins.gitlab.notification.GitLabNotificationIdsHolder"/>
    <actionCustomPlaceAllowlist id="GitLabActionCustomPlaceAllowlist"
                                places="GitLabMergeRequestListPopup;GitLabMergeRequestChangesTreePopup;GitLabMergeRequestDetailsPopup"/>
  </extensions>

  <extensions defaultExtensionNs="Git4Idea">
    <GitHttpAuthDataProvider implementation="org.jetbrains.plugins.gitlab.git.http.GitLabSilentHttpAuthDataProvider"/>
    <GitHttpAuthDataProvider implementation="org.jetbrains.plugins.gitlab.git.http.GitLabHttpAuthDataProvider"/>
    <gitCurrentBranchPresenter
      implementation="org.jetbrains.plugins.gitlab.mergerequest.ui.review.GitLabMergeRequestOnCurrentBranchService$BranchPresenter"/>
    <gitPushNotificationCustomizer implementation="org.jetbrains.plugins.gitlab.notification.GitLabPushNotificationCustomizer"/>
  </extensions>

  <actions>
    <action id="GitLab.Merge.Request.Show.List"
            class="org.jetbrains.plugins.gitlab.mergerequest.action.GitLabShowMergeRequestsAction"
            icon="org.jetbrains.plugins.gitlab.GitlabIcons.GitLabLogo"/>

    <action id="GitLab.Merge.Request.List.Refresh"
            class="org.jetbrains.plugins.gitlab.mergerequest.action.GitLabMergeRequestListRefreshAction"
            use-shortcut-of="Refresh"
            icon="AllIcons.Actions.Refresh"/>
    <action id="GitLab.Merge.Request.Refresh"
            class="org.jetbrains.plugins.gitlab.mergerequest.action.GitLabMergeRequestRefreshAction"
            use-shortcut-of="Refresh"
            icon="AllIcons.Actions.Refresh"/>
    <action id="GitLab.Merge.Request.Show"
            class="org.jetbrains.plugins.gitlab.mergerequest.action.GitLabShowMergeRequestAction"/>
    <action id="GitLab.Merge.Request.Open.Link"
            class="org.jetbrains.plugins.gitlab.mergerequest.action.GitLabMergeRequestOpenURLAction"
            icon="org.jetbrains.plugins.gitlab.GitlabIcons.GitLabLogo"/>
    <action id="GitLab.Merge.Request.Copy.Link"
            class="org.jetbrains.plugins.gitlab.mergerequest.action.GitLabMergeRequestCopyURLAction"
            icon="org.jetbrains.plugins.gitlab.GitlabIcons.GitLabLogo"/>
    <action id="GitLab.Merge.Request.Create"
            class="org.jetbrains.plugins.gitlab.mergerequest.ui.create.action.GitLabMergeRequestOpenCreateTabAction"
            icon="AllIcons.General.Add">
      <add-to-group group-id="Git.Menu"/>
    </action>

    <action id="GitLab.Create.Snippet"
            class="org.jetbrains.plugins.gitlab.snippets.GitLabCreateSnippetAction"
            icon="org.jetbrains.plugins.gitlab.GitlabIcons.GitLabLogo">
      <add-to-group group-id="EditorPopupMenu"/>
      <add-to-group group-id="ProjectViewPopupMenu"/>
      <add-to-group group-id="EditorTabPopupMenu"/>
      <add-to-group group-id="ConsoleEditorPopupMenu"/>
    </action>

    <group id="GitLab.Main.Group" popup="true" class="com.intellij.ide.actions.NonTrivialActionGroup">
      <reference id="GitLab.Merge.Request.Show.List"/>

      <add-to-group group-id="Git.MainMenu" relative-to-action="Git.Configure.Remotes" anchor="before"/>
    </group>

    <group id="GitLab.Merge.Request.List.Actions">
      <reference id="GitLab.Merge.Request.Show"/>
      <reference id="GitLab.Merge.Request.Open.Link"/>
      <reference id="GitLab.Merge.Request.Copy.Link"/>
      <separator/>
      <reference id="GitLab.Merge.Request.List.Refresh"/>
    </group>

    <group id="GitLab.Merge.Request.Details.Popup">
      <reference id="GitLab.Merge.Request.Refresh"/>
      <reference id="GitLab.Merge.Request.Open.Link"/>
      <reference id="GitLab.Merge.Request.Copy.Link"/>
    </group>

    <group id="GitLab.Merge.Request.Timeline.Popup">
      <action id="GitLab.Merge.Request.Timeline.ShowEvents"
              class="org.jetbrains.plugins.gitlab.mergerequest.ui.timeline.action.GitLabMergeRequestTimelineShowEventsAction"/>
      <separator/>
      <reference id="GitLab.Merge.Request.Refresh"/>
      <reference id="GitLab.Merge.Request.Open.Link"/>
      <reference id="GitLab.Merge.Request.Copy.Link"/>
    </group>

    <group id="GitLab.Merge.Request.Timeline.Error.Popup">
      <reference id="GitLab.Merge.Request.Open.Link"/>
      <reference id="GitLab.Merge.Request.Copy.Link"/>
    </group>

    <group id="GitLab.Merge.Request.Changes.Popup">
      <reference id="Diff.ShowDiff"/>
      <reference id="Diff.ShowStandaloneDiff"/>
      <reference id="EditSource"/>
      <action id="GitLab.Merge.Request.Changes.MarkViewed"
              class="org.jetbrains.plugins.gitlab.mergerequest.ui.details.GitLabMarkFilesViewedAction"/>
      <action id="GitLab.Merge.Request.Changes.MarkNotViewed"
              class="org.jetbrains.plugins.gitlab.mergerequest.ui.details.GitLabMarkFilesNotViewedAction"/>
      <group id="GitLab.Merge.Request.Details.Commit.Tree.ViewOptions" icon="AllIcons.Actions.Show" popup="true">
        <reference id="ChangesView.GroupBy"/>
      </group>
      <separator/>
      <reference ref="ExpandAll"/>
      <reference ref="CollapseAll"/>
      <separator/>
      <reference id="GitLab.Merge.Request.Refresh"/>
      <reference id="GitLab.Merge.Request.Open.Link"/>
      <reference id="GitLab.Merge.Request.Copy.Link"/>
    </group>

    <group id="GitLab.Merge.Request.Diff.Discussions.View.Options"
           class="org.jetbrains.plugins.gitlab.mergerequest.ui.diff.action.GitLabMergeRequestDiffReviewDiscussionsToggleAction"
           icon="AllIcons.Actions.Show"
           popup="true">
      <add-to-group group-id="Diff.EditorGutterPopupMenu.EditorSettings"
                    relative-to-action="Vcs.Diff.ToggleDiffAligningMode"
                    anchor="before"/>
    </group>
    <action id="GitLab.MergeRequest.Review.Submit"
            class="org.jetbrains.plugins.gitlab.mergerequest.diff.action.GitLabMergeRequestDiffSubmitReviewAction"/>

    <group id="GitLab.Open.In.Browser" class="org.jetbrains.plugins.gitlab.ui.action.GitLabOpenInBrowserActionGroup"
           icon="org.jetbrains.plugins.gitlab.GitlabIcons.GitLabLogo">
      <override-text place="EditorTabPopup"/>
      <override-text place="ProjectViewPopup" use-text-of-place="EditorTabPopup"/>
      <override-text place="EditorPopup" use-text-of-place="EditorTabPopup"/>
      <override-text place="FavoritesPopup" use-text-of-place="EditorTabPopup"/>
      <add-to-group group-id="Git.Hosting.Open.In.Browser.Group"/>
    </group>

    <group id="GitLab.Copy.Link" class="org.jetbrains.plugins.gitlab.ui.action.GitLabCopyLinkActionGroup"
           icon="org.jetbrains.plugins.gitlab.GitlabIcons.GitLabLogo">
      <override-text place="CopyReferencePopup"/>
      <add-to-group group-id="Git.Hosting.Copy.Link.Group"/>
    </group>

    <group id="GitLab.Merge.Request.Review.Editor.Branch.Popup.Actions">
      <separator/>
      <action id="GitLab.Merge.Request.Show.In.Toolwindow"
              class="org.jetbrains.plugins.gitlab.mergerequest.ui.review.GitLabMergeRequestOnCurrentBranchService$ShowAction"
              icon="org.jetbrains.plugins.gitlab.GitlabIcons.GitLabLogo">
      </action>
      <reference id="GitLab.MergeRequest.Review.Submit"/>
      <action id="GitLab.Merge.Request.Branch.Update"
              class="org.jetbrains.plugins.gitlab.mergerequest.ui.review.GitLabMergeRequestOnCurrentBranchService$UpdateAction"
              icon="org.jetbrains.plugins.gitlab.GitlabIcons.GitLabWarning">
      </action>
      <action id="GitLab.MergeRequest.Review.Mode.Toggle"
              class="org.jetbrains.plugins.gitlab.mergerequest.ui.review.GitLabMergeRequestOnCurrentBranchService$ToggleReviewAction">
      </action>
      <add-to-group group-id="Git.Experimental.Branch.Popup.Actions"/>
    </group>
  </actions>
</idea-plugin>
 lib/vcs-gitlab.jar  vcs-hg  -<idea-plugin>
  <id>hg4idea</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <name>Mercurial</name>
  <description>
    <![CDATA[
      Allows working with <a href="https://www.mercurial-scm.org/">Mercurial version control system</a>.
      The following features are available:
        <ul>
        <li>Dedicated page under the Version Control node in the Settings/Preferences dialog.</li>
        <li>Ability to browse, check out sources from and import into the available Mercurial repositories, when Mercurial is not enabled.</li>
        <li>When Mercurial is enabled, the Mercurial node appears on the VCS menu, and on the context menu of the editor.
        </ul>
      ]]>
  </description>
  <category>Version Controls</category>
  <vendor>JetBrains</vendor>
  <depends>com.intellij.modules.vcs</depends>

  <extensions defaultExtensionNs="com.intellij">
    <registryKey key="hg4idea.execute.with.mediator" defaultValue="true"
                 description="Use wrapper executable on Windows to support soft Mercurial process cancellation."/>

    <search.projectOptionsTopHitProvider implementation="org.zmlx.hg4idea.HgOptionsTopHitProvider"/>
    <vcs name="hg4idea" vcsClass="org.zmlx.hg4idea.HgVcs" displayName="Mercurial" administrativeAreaName=".hg"/>
    <projectConfigurable id="vcs.Mercurial" key="hg4idea.mercurial" instance="org.zmlx.hg4idea.HgProjectConfigurable"
                         parentId="project.propVCSSupport.Mappings" groupWeight="-500"/>
    <checkoutProvider implementation="org.zmlx.hg4idea.provider.HgCheckoutProvider"/>
    <vcsRootChecker implementation="org.zmlx.hg4idea.roots.HgRootChecker"/>
    <vcsRepositoryCreator implementation="org.zmlx.hg4idea.repo.HgRepositoryCreator"/>
    <pushSupport implementation="org.zmlx.hg4idea.push.HgPushSupport"/>
    <vcsChangesViewRefresher implementation="org.zmlx.hg4idea.provider.HgIgnoredFileHolder$Provider"/>
    <vcs.branchStateProvider implementation="org.zmlx.hg4idea.branch.HgBranchStateProvider"/>
    <cherryPicker implementation="org.zmlx.hg4idea.cherrypick.HgCherryPicker"/>
    <vcsPopupProvider implementation="org.zmlx.hg4idea.provider.HgQuickListProvider"/>
    <logProvider implementation="org.zmlx.hg4idea.log.HgLogProvider"/>
    <vcs.taskHandler implementation="org.zmlx.hg4idea.HgTaskHandler"/>
    <vcs.ignoredFilesHolder implementation="org.zmlx.hg4idea.provider.HgIgnoredFileHolder$Provider"/>
    <vcsRepositoryInitializer implementation="org.zmlx.hg4idea.repo.HgRepositoryInitializer"/>

    <applicationService serviceImplementation="org.zmlx.hg4idea.HgGlobalSettings"/>
    <applicationService serviceImplementation="org.zmlx.hg4idea.HgRememberedInputs"/>
    <projectService serviceImplementation="org.zmlx.hg4idea.HgProjectSettings"/>
    <projectService serviceImplementation="org.zmlx.hg4idea.provider.update.HgUpdateConfigurationSettings"/>
    <ignoredFileContentProvider implementation="org.zmlx.hg4idea.ignore.HgIgnoredFileContentProvider"/>

    <!-- HG ignore lang -->
    <fileType language="HgIgnore" extensions="hgignore" fieldName="INSTANCE" name="HgIgnore file" implementationClass="org.zmlx.hg4idea.ignore.lang.HgIgnoreFileType"/>
    <lang.parserDefinition language="HgIgnore"
                           implementationClass="com.intellij.openapi.vcs.changes.ignore.lang.IgnoreParserDefinition"/>
    <codeInsight.lineMarkerProvider language="HgIgnore"
                                    implementationClass="com.intellij.openapi.vcs.changes.ignore.codeInsight.IgnoreDirectoryMarkerProvider"/>
    <lang.braceMatcher language="HgIgnore" implementationClass="com.intellij.openapi.vcs.changes.ignore.lang.IgnoreBraceMatcher"/>
    <lang.commenter language="HgIgnore" implementationClass="com.intellij.openapi.vcs.changes.ignore.lang.IgnoreCommenter"/>
    <!--END HG ignore lang-->
    <vcs.actions.ScheduleForAdditionActionExtension implementation="org.zmlx.hg4idea.action.HgAdd"/>

    <statusBarWidgetFactory id="hg"
                            implementation="org.zmlx.hg4idea.status.ui.HgStatusWidget$Factory"
                            order="after CodeStyleStatusBarWidget,before ReadOnlyAttribute"/>
    <statusBarWidgetFactory id="InHgIncomingOutgoingWidget"
                            implementation="org.zmlx.hg4idea.status.ui.HgIncomingOutgoingWidget$IncomingFactory"
                            order="after hg"/>
    <statusBarWidgetFactory id="OutHgIncomingOutgoingWidget"
                            implementation="org.zmlx.hg4idea.status.ui.HgIncomingOutgoingWidget$OutgoingFactory"
                            order="after InHgIncomingOutgoingWidget"/>

    <statistics.notificationIdsHolder implementation="org.zmlx.hg4idea.HgNotificationIdsHolder"/>

    <history.activityPresentationProvider implementation="org.zmlx.hg4idea.HgActivityPresentationProvider"/>
  </extensions>

  <projectListeners>
    <listener class="org.zmlx.hg4idea.status.ui.HgStatusWidget$Listener" activeInHeadlessMode="false" activeInTestMode="false"
              topic="com.intellij.dvcs.repo.VcsRepositoryMappingListener"/>
    <listener class="org.zmlx.hg4idea.status.ui.HgIncomingOutgoingWidget$Listener" activeInHeadlessMode="false" activeInTestMode="false"
              topic="com.intellij.dvcs.repo.VcsRepositoryMappingListener"/>
    <listener class="org.zmlx.hg4idea.status.ui.HgIncomingOutgoingWidget$Listener" activeInHeadlessMode="false" activeInTestMode="false"
              topic="org.zmlx.hg4idea.status.ui.HgWidgetUpdater"/>
  </projectListeners>

  <actions>
    <action id="Hg.Init" class="org.zmlx.hg4idea.action.HgInit">
      <add-to-group group-id="Vcs.Import"/>
      <add-to-group group-id="Vcs.Operations.Popup.NonVcsAware" relative-to-action="Start.Use.Vcs" anchor="before"/>
    </action>

    <group id="hg4idea.file.menu" popup="true" class="org.zmlx.hg4idea.action.HgMercurialMenu">
      <reference ref="CheckinFiles"/>
      <action id="hg4idea.add" class="com.intellij.openapi.vcs.changes.actions.ScheduleForAdditionWithIgnoredFilesConfirmationAction"
              icon="AllIcons.General.Add" use-shortcut-of="ChangesView.AddUnversioned"/>
      <reference ref="ChangesView.Revert"/>
      <reference ref="ChangesView.RevertFiles"/>
      <separator/>

      <reference ref="Compare.SameVersion"/>
      <reference ref="Compare.Selected"/>
      <action id="hg4idea.CompareWithBranch" class="org.zmlx.hg4idea.action.HgCompareWithBranchAction"/>
      <reference ref="Vcs.ShowTabbedFileHistory"/>
      <reference ref="Vcs.ShowHistoryForBlock"/>
      <reference ref="Annotate"/>
      <separator/>

      <action id="hg4idea.pull" class="org.zmlx.hg4idea.action.HgPullAction" icon="AllIcons.Actions.CheckOut"/>
      <reference ref="Vcs.Push"/>
      <separator/>
      <action id="hg4idea.run.conflict.resolver" class="org.zmlx.hg4idea.action.HgRunConflictResolverAction"/>
      <action id="hg4idea.merge.files" class="org.zmlx.hg4idea.action.HgMerge" icon="AllIcons.Actions.ShowAsTree"/>
      <separator/>

      <action id="hg4idea.branches" class="org.zmlx.hg4idea.branch.HgBranchesAction"/>
      <action id="hg4idea.tag" class="org.zmlx.hg4idea.action.HgCreateTagAction"/>
      <action id="hg4idea.updateTo" class="org.zmlx.hg4idea.action.HgUpdateToAction"/>
      <action id="hg4idea.resolve.mark" class="org.zmlx.hg4idea.action.HgMarkResolved"/>
      <separator/>
      <action id="hg4idea.Graft.Continue" class="org.zmlx.hg4idea.action.HgContinueGraftAction"/>
      <action id="hg4idea.Rebase.Abort" class="org.zmlx.hg4idea.action.HgAbortRebaseAction"/>
      <action id="hg4idea.Rebase.Continue" class="org.zmlx.hg4idea.action.HgContinueRebaseAction"/>

      <separator/>
      <action class="org.zmlx.hg4idea.action.mq.HgShowUnAppliedPatchesAction" id="hg4idea.mq.ShowUnAppliedPatches"
              icon="AllIcons.Debugger.Watch"/>
      <reference id="ChangesView.Browse"/>
      <separator/>

      <add-to-group group-id="VcsGroup" anchor="last"/>
      <add-to-group group-id="VcsGlobalGroup" anchor="after" relative-to-action="Vcs.Specific"/>
    </group>

    <action class="org.zmlx.hg4idea.action.HgUpdateToFromLogAction" id="hg4idea.UpdateToRevision"/>
    <action class="org.zmlx.hg4idea.action.HgCreateTagFromLogAction" id="hg4idea.CreateNewTag"/>
    <action class="org.zmlx.hg4idea.action.HgCreateNewBranchFromLogAction" id="hg4idea.CreateNewBranch"/>
    <action class="org.zmlx.hg4idea.action.HgMergeWithRevisionFromLog" id="hg4idea.MergeWithRevision"/>
    <group id="Hg.Mq" class="com.intellij.ide.actions.NonTrivialActionGroup" popup="true"
           icon="AllIcons.Actions.Edit">
      <action class="org.zmlx.hg4idea.action.mq.HgQImportFromLogAction" id="hg4idea.QImport"
              icon="AllIcons.Duplicates.SendToTheRight"/>
      <action class="org.zmlx.hg4idea.action.mq.HgQGotoFromLogAction" id="hg4idea.QGoto"
              icon="AllIcons.Diff.ApplyNotConflicts"/>
      <action class="org.zmlx.hg4idea.action.mq.HgQRenameFromLogAction" id="hg4idea.QRename"/>
      <action class="org.zmlx.hg4idea.action.mq.HgQFinishFromLogAction" id="hg4idea.QFinish"
              icon="AllIcons.Duplicates.SendToTheLeft"/>
    </group>

    <group id="Hg.MQ.Unapplied">
      <action class="com.intellij.openapi.actionSystem.EmptyAction" id="hg4idea.QRefresh"
              icon="AllIcons.Actions.Refresh" use-shortcut-of="Refresh"/>
      <action class="org.zmlx.hg4idea.action.mq.HgQGotoActionFromMqPatches" id="hg4idea.QGotoFromPatches"
              icon="AllIcons.Diff.ApplyNotConflicts">
        <keyboard-shortcut first-keystroke="alt shift G" keymap="$default"/>
      </action>
      <action class="org.zmlx.hg4idea.action.mq.HgQPushActionFromPatches" id="hg4idea.QPushAction"
              icon="AllIcons.Actions.MoveTo2">
        <keyboard-shortcut first-keystroke="alt shift P" keymap="$default"/>
      </action>
      <action class="org.zmlx.hg4idea.action.mq.HgQFoldActionFromPatches" id="hg4idea.QFold"
              icon="AllIcons.Vcs.Merge">
        <keyboard-shortcut first-keystroke="alt shift D" keymap="$default"/>
      </action>
      <action class="com.intellij.openapi.actionSystem.EmptyAction" id="hg4idea.QDelete"
              icon="AllIcons.General.Remove" use-shortcut-of="$Delete"/>
    </group>


    <group id="Hg.Log.ContextMenu">
      <reference id="hg4idea.UpdateToRevision"/>
      <reference id="hg4idea.CreateNewBranch"/>
      <reference id="hg4idea.CreateNewTag"/>
      <reference id="hg4idea.MergeWithRevision"/>
      <separator/>
      <reference id="Hg.Mq"/>
      <add-to-group group-id="Vcs.Log.ContextMenu"/>
    </group>

    <group id="Mq.Patches.Toolbar">
      <reference id="Hg.MQ.Unapplied"/>
    </group>

    <group id="Mq.Patches.ContextMenu">
      <reference id="Hg.MQ.Unapplied"/>
      <separator/>
      <reference id="ChangesView.ApplyPatch"/>
    </group>

    <action id="Hg.Commit.And.Push.Executor" class="org.zmlx.hg4idea.action.HgCommitAndPushExecutorAction">
      <add-to-group group-id="Vcs.Commit.PrimaryCommitActions"/>
      <keyboard-shortcut first-keystroke="control alt K" keymap="$default"/>
    </action>

    <group id="Hg.Ignore.File" class="org.zmlx.hg4idea.ignore.actions.HgIgnoreFileActionGroup">
      <add-to-group group-id="ChangesViewPopupMenu" anchor="after" relative-to-action="ChangesView.AddUnversioned"/>
      <add-to-group group-id="hg4idea.file.menu" anchor="after" relative-to-action="hg4idea.add"/>
      <add-to-group group-id="Unversioned.Files.Dialog.Popup" anchor="after" relative-to-action="$Delete"/>
    </group>
  </actions>

  <resource-bundle>messages.HgBundle</resource-bundle>
</idea-plugin>
 lib/vcs-hg.jar  
webDeployment  ?<idea-plugin package="com.jetbrains.plugins.webDeployment">
  <!--suppress PluginXmlCapitalization -->
  <name>FTP/SFTP/WebDAV Connectivity</name>
  <id>com.jetbrains.plugins.webDeployment</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <category>Deployment</category>
  <description><![CDATA[
  Provides connectivity with remote hosts via FTP(S)/SFTP/WebDAV as well as lets you deploy files within the file system or provide web paths for them.<br/><br/>
  The following features are available:<ul>
    <li>Maintain a list of remote FTP(S)/SFTP/WebDAV server configurations (<a href="https://www.jetbrains.com/help/phpstorm/?deployment.configure.server.remote">docs</a>)</li>
    <li>Synchronize your project files with a remote server (<a href="https://www.jetbrains.com/help/phpstorm/?Deploying_Applications">docs</a>)</li>
    <li>Access remote interpreter on a SFTP server (<a href="https://www.jetbrains.com/help/phpstorm/?php.configure.remote.interpreter">docs</a>)</li>
  </ul>
  ]]></description>
  <vendor>JetBrains</vendor>

  <resource-bundle>messages.WDBundle</resource-bundle>

  <content>
    <module name="intellij.webDeployment/phpStorm"/>
  </content>
  <dependencies>
    <plugin id="com.intellij.modules.xml"/>
    <plugin id="com.intellij.modules.vcs"/>
    <plugin id="com.intellij.modules.ultimate"/>
    <plugin id="com.intellij.modules.ssh"/>
  </dependencies>

  <extensionPoints>
    <extensionPoint name="uploadableRunConfigurationsFilter"
                    interface="com.jetbrains.plugins.webDeployment.UploadableRunConfigurationsFilter" dynamic="true"/>
    <extensionPoint name="deploymentConfigurableTabProvider"
                    interface="com.jetbrains.plugins.webDeployment.ui.config.DeploymentConfigurableTabProvider" dynamic="true"/>
    <extensionPoint name="uploadPostponer" interface="com.jetbrains.plugins.webDeployment.UploadPostponer" dynamic="true"/>
  </extensionPoints>

  <applicationListeners>
    <listener class="com.jetbrains.plugins.webDeployment.AutoUploadComponent$AutoUploadProjectManagerListener"
              topic="com.intellij.openapi.project.ProjectCloseListener"/>
    <listener class="com.jetbrains.plugins.webDeployment.DeploymentNotificationsComponent"
              topic="com.intellij.openapi.project.ProjectManagerListener"/>
    <listener class="com.jetbrains.plugins.webDeployment.config.ConfigMigrationUtil$DeploymentListener"
              topic="com.jetbrains.plugins.webDeployment.WebServerConfigsChangedListener"/>
    <listener class="com.jetbrains.plugins.webDeployment.config.ConfigMigrationUtil$ProjectListener"
              topic="com.intellij.openapi.project.ProjectManagerListener"/>
  </applicationListeners>
  <projectListeners>
    <listener class="com.jetbrains.plugins.webDeployment.ProjectDeploymentRevisionTracker$ProjectDeploymentRevisionTrackerConfigChangeListener"
              topic="com.jetbrains.plugins.webDeployment.DeploymentConfigChangeListener"/>
    <listener class="com.jetbrains.plugins.webDeployment.config.ConfigMigrationUtil$SshConfigListener"
              topic="com.intellij.ssh.config.unified.SshConfigManager$Listener"/>
  </projectListeners>

  <extensions defaultExtensionNs="com.intellij">
    <postStartupActivity implementation="com.jetbrains.plugins.webDeployment.AutoUploadComponent$AutoUploadPostStartupActivity"/>
    <postStartupActivity implementation="com.jetbrains.plugins.webDeployment.conflicts.RemoteChangeNotifier$MyStartupActivity"/>

    <projectService serviceInterface="com.jetbrains.plugins.webDeployment.DeploymentRevisionTracker"
                    serviceImplementation="com.jetbrains.plugins.webDeployment.ProjectDeploymentRevisionTracker"/>

    <projectService serviceInterface="com.jetbrains.plugins.webDeployment.config.GroupedServersConfigManager"
                    serviceImplementation="com.jetbrains.plugins.webDeployment.config.GroupedServersConfigManagerImpl"/>
    <projectService serviceImplementation="com.jetbrains.plugins.webDeployment.config.WebServersConfigManagerBaseImpl$ProjectInstance"/>
    <applicationService serviceImplementation="com.jetbrains.plugins.webDeployment.config.WebServersConfigManagerBaseImpl$App"/>
    <projectService serviceImplementation="com.jetbrains.plugins.webDeployment.config.WebServersAuthStorage$ProjectInstance"/>
    <applicationService serviceImplementation="com.jetbrains.plugins.webDeployment.config.WebServersAuthStorage$AppInstance"/>
    <pathMacroFilter implementation="com.jetbrains.plugins.webDeployment.config.DeploymentPathMacroFilter"/>
    <projectService serviceImplementation="com.jetbrains.plugins.webDeployment.config.PublishConfig"/>

    <projectConfigurable groupId="build" groupWeight="110" instance="com.jetbrains.plugins.webDeployment.ui.config.DeploymentConfigurable" id="web.server"
                         key="deployment.configurable.name" bundle="messages.WDBundle">
      <configurable instance="com.jetbrains.plugins.webDeployment.ui.PublishOptionsConfigurable" id="reference.settings.deploy.options"
                    key="publish.options.configurable.name" bundle="messages.WDBundle"/>
    </projectConfigurable>

    <actionOnSaveInfoProvider id="UploadOnSaveInfoProvider"
                              implementation="com.jetbrains.plugins.webDeployment.ui.UploadOnSaveActionInfo$UploadOnSaveInfoProvider"
                              order="after FormatOnSaveInfoProvider, after EsLintOnSaveInfoProvider, after PrettierOnSaveInfoProvider, after FileWatcherOnSaveInfoProvider, before BuildOnSaveInfoProvider"/>

    <checkinHandlerFactory implementation="com.jetbrains.plugins.webDeployment.UploadCheckinHandlerFactory"/>

    <toolWindow id="Remote Host"
                icon="com.jetbrains.plugins.webDeployment.WebDeploymentIcons.WebServerToolWindow"
                anchor="right"
                secondary="false"
                factoryClass="com.jetbrains.plugins.webDeployment.ui.WebServerToolWindowFactory"/>
    <toolWindow id="File Transfer" icon="com.jetbrains.plugins.webDeployment.WebDeploymentIcons.TransferToolWindow"
                anchor="bottom" doNotActivateOnStart="true" canCloseContents="true"
                factoryClass="com.jetbrains.plugins.webDeployment.ui.FileTransferToolWindowFactory"/>

    <stepsBeforeRunProvider id="uploadBeforeRun" implementation="com.jetbrains.plugins.webDeployment.UploadBeforeRunTaskProvider"/>
    <selectInTarget implementation="com.jetbrains.plugins.webDeployment.RemoteHostSelectInTarget"/>
    <webBrowserUrlProvider implementation="com.jetbrains.plugins.webDeployment.actions.PublishedFileBrowserUrlProvider"/>
    <webBrowserUrlProvider implementation="com.jetbrains.plugins.webDeployment.remoteEdit.RemoteEditedFileBrowserUrlProvider"/>

    <bundledQuickListsProvider implementation="com.jetbrains.plugins.webDeployment.actions.DeploymentBundlerQuickListsProvider"/>
    <cutElementMarker implementation="com.jetbrains.plugins.webDeployment.ui.remotebrowser.CutRemoteElementMarker"/>

    <refactoring.copyHandler implementation="com.jetbrains.plugins.webDeployment.ui.remotebrowser.dnd.RemoteCopyHandlerDelegate" order="last"/>
    <refactoring.moveHandler implementation="com.jetbrains.plugins.webDeployment.ui.remotebrowser.dnd.RemoteMoveHandlerDelegate" order="last"/>
    <filePasteProvider implementation="com.jetbrains.plugins.webDeployment.ui.remotebrowser.dnd.RemotePasteProvider"/>


    <virtualFileSystem key="remoteDeploymentFS"
                       implementationClass="com.jetbrains.plugins.webDeployment.remoteEdit.fs.RemoteDeploymentFileSystem"/>

    <editorTabTitleProvider implementation="com.jetbrains.plugins.webDeployment.remoteEdit.RemoteFileEditorTitleTabProvider"/>

    <statistics.projectUsagesCollector implementation="com.jetbrains.plugins.webDeployment.statistic.DeploymentServersUsagesCollector"/>
    <statistics.projectUsagesCollector implementation="com.jetbrains.plugins.webDeployment.statistic.DeploymentPublishConfigUsagesCollector"/>

    <statistics.counterUsagesCollector implementationClass="com.jetbrains.plugins.webDeployment.statistic.ServerSettingsUsageTriggerCollector"/>
    <statistics.counterUsagesCollector implementationClass="com.jetbrains.plugins.webDeployment.statistic.DeploymentActivitiesUsageTriggerCollector"/>
    <notificationGroup id="FTP/SFTP connectivity" bundle="messages.WDBundle" key="web.deployment.balloon.group.id" displayType="BALLOON"/>
    <notificationGroup id="File Transfer:FTP/SFTP connectivity" bundle="messages.WDBundle" key="web.deployment.toolwindow.group.id" toolWindowId="File Transfer" displayType="TOOL_WINDOW"/>

    <registryKey key="ide.deployment.use.speculatively.collecting.upload" defaultValue="true"
                 description="Use new upload algorithm with collecting phase performed based on local information only, therefore quicker"/>

    <troubleInfoCollector implementation="com.jetbrains.plugins.webDeployment.DeploymentTroubleInfoCollector"/>

    <statusBarWidgetFactory id="webDeployment.default.server.widget"
                            implementation="com.jetbrains.plugins.webDeployment.ui.DefaultServerStatusBarWidgetFactory" order="before Position"/>
    
    <macro implementation="com.jetbrains.plugins.webDeployment.RemoteProjectMacro"/>
    <search.optionContributor implementation="com.jetbrains.plugins.webDeployment.ui.DeploymentSearchableOptionsContributor"/>
    <iconMapper mappingFile="WebDeploymentIconMappings.json"/>
  </extensions>

  <extensions defaultExtensionNs="com.jetbrains.plugins.webDeployment">
    <deploymentConfigurableTabProvider
        implementation="com.jetbrains.plugins.webDeployment.ui.config.mappings.MappingsConfigurableTabProvider"/>
    <deploymentConfigurableTabProvider
        implementation="com.jetbrains.plugins.webDeployment.ui.config.ExcludedPathsConfigurableTabProvider"/>
  </extensions>

  <actions>
    <group id="PublishGroup.Base">
      <action id="PublishGroup.Upload" class="com.jetbrains.plugins.webDeployment.actions.UploadFilesAction"
              icon="AllIcons.Actions.Upload"/>
      <action id="PublishGroup.UploadTo" class="com.jetbrains.plugins.webDeployment.actions.UploadFilesToAction">
        <keyboard-shortcut keymap="$default" first-keystroke="shift control alt X"/>
      </action>
      <action id="PublishGroup.UploadAllOpenFiles" class="com.jetbrains.plugins.webDeployment.actions.UploadAllOpenFilesAction"/>
      <action id="PublishGroup.UploadAllOpenFilesTo" class="com.jetbrains.plugins.webDeployment.actions.UploadAllOpenFilesToAction"/>
      <action id="PublishGroup.Download" class="com.jetbrains.plugins.webDeployment.actions.DownloadAction"
              icon="AllIcons.Actions.Download"/>
      <action id="PublishGroup.DownloadFrom" class="com.jetbrains.plugins.webDeployment.actions.DownloadFromAction"/>
      <separator/>
      <action id="PublishGroup.CompareLocalVsRemote" class="com.jetbrains.plugins.webDeployment.actions.CompareLocalVsRemoteAction"
              icon="AllIcons.Actions.Diff"/>
      <action id="PublishGroup.CompareLocalVsRemoteWith" class="com.jetbrains.plugins.webDeployment.actions.CompareLocalVsRemoteWithAction"/>

      <action id="PublishGroup.SyncLocalVsRemote" class="com.jetbrains.plugins.webDeployment.actions.SyncLocalVsRemoteAction"
              icon="AllIcons.Actions.Refresh"/>
      <action id="PublishGroup.SyncLocalVsRemoteWith" class="com.jetbrains.plugins.webDeployment.actions.SyncLocalVsRemoteWithAction"/>
    </group>

    <group id="PublishGroup" popup="true" icon="com.jetbrains.plugins.webDeployment.WebDeploymentIcons.FileTransfer">
      <reference id="PublishGroup.Base"/>
      <separator/>
      <action id="WebDeployment.Configuration" class="com.jetbrains.plugins.webDeployment.actions.ConfigureDeploymentAction"/>
      <action id="WebDeployment.Options" class="com.jetbrains.plugins.webDeployment.actions.ConfigureDeploymentOptionsAction"/>
      <action id="WebDeployment.ToggleAutoUpload" class="com.jetbrains.plugins.webDeployment.actions.ToggleAutoUploadAction"/>
      <separator/>
      <action id="WebDeployment.BrowseServers" class="com.jetbrains.plugins.webDeployment.actions.BrowseServersAction"
              icon="AllIcons.Webreferences.Server"/>

      <add-to-group group-id="ToolsMenu" anchor="last"/>
    </group>

    <group id="PublishGroupPopupMenu" icon="com.jetbrains.plugins.webDeployment.WebDeploymentIcons.FileTransfer"
           class="com.jetbrains.plugins.webDeployment.actions.DeploymentActionGroup" popup="true">
      <reference id="PublishGroup.Base"/>
      <action id="RemoteHostView.EditRemoteFile" class="com.jetbrains.plugins.webDeployment.remoteEdit.EditRemoteFileAction"/>

      <add-to-group group-id="ProjectViewPopupMenuSettingsGroup" anchor="last"/>
      <add-to-group group-id="EditorPopupMenu" anchor="last"/>
      <add-to-group group-id="EditorTabPopupMenu" anchor="last"/>
    </group>

    <group id="RemoteHostViewPopupMenu">
      <reference id="PublishGroup.Upload"/>
      <reference id="PublishGroup.Download"/>

      <group id="RemoteHost.NewGroup" popup="true" class="com.jetbrains.plugins.webDeployment.actions.RemoteHostNewGroup">
        <action id="RemoteHostView.CreateFile" class="com.jetbrains.plugins.webDeployment.actions.CreateFileAction"
                icon="AllIcons.FileTypes.Text"/>

        <action id="RemoteHostView.CreateFolder" class="com.jetbrains.plugins.webDeployment.actions.CreateSubfolderAction"
                icon="AllIcons.Nodes.Folder"/>
      </group>

      <action id="RemoteHostView.SetPermissions" class="com.jetbrains.plugins.webDeployment.actions.SetPermissionsAction"
              icon="com.jetbrains.plugins.webDeployment.WebDeploymentIcons.ChangePermissions"/>

      <action id="RemoteHostView.Rename" class="com.jetbrains.plugins.webDeployment.actions.RemoteRenameAction"
              use-shortcut-of="RenameElement"/>

      <reference id="$Delete"/>

      <reference id="$Cut"/>

      <reference id="$Copy"/>

      <reference id="$Paste"/>


      <action id="RemoteHostView.EditSource" class="com.intellij.ide.actions.EditSourceAction"
              icon="AllIcons.Actions.EditSource" use-shortcut-of="EditSource"/>

      <reference id="PublishGroup.SyncLocalVsRemote"/>
      <reference id="PublishGroup.CompareLocalVsRemote"/>

      <reference id="RemoteHostView.EditRemoteFile"/>

      <action id="RemoteHostView.CopyPaths" class="com.jetbrains.plugins.webDeployment.actions.CopyServerPathsAction"
              use-shortcut-of="CopyPaths"/>

      <action id="RemoteHostView.ToggleExclusion" class="com.jetbrains.plugins.webDeployment.actions.ToggleRemoteExclusionAction"/>

      <action id="RemoteHost.NewRemoteItem" class="com.jetbrains.plugins.webDeployment.actions.NewRemoteItemAction"/>
    </group>

    <action id="SelectInRemoteHost" class="com.jetbrains.plugins.webDeployment.actions.SelectInRemoteHostAction">
    </action>

    <action id="WD.UploadCurrentRemoteFileAction"
            class="com.jetbrains.plugins.webDeployment.remoteEdit.notification.UploadCurrentRemoteFileAction"
            icon="AllIcons.Actions.Upload">
      <keyboard-shortcut keymap="$default" first-keystroke="shift alt Q"/>
    </action>

    <action id="WD.RefreshCurrentRemoteFileAction"
            class="com.jetbrains.plugins.webDeployment.remoteEdit.notification.RefreshCurrentRemoteFileAction"
            icon="AllIcons.Actions.Refresh"/>

    <group id="DeploymentGroup.Basic">
      <group icon="com.jetbrains.plugins.webDeployment.WebDeploymentIcons.FileTransfer" popup="true"
             class="com.jetbrains.plugins.webDeployment.actions.DeploymentActionGroup" id="DeploymentVcsActions">
        <reference id="PublishGroup.Upload"/>
        <reference id="PublishGroup.UploadTo"/>
        <reference id="PublishGroup.CompareLocalVsRemote"/>
        <reference id="PublishGroup.CompareLocalVsRemoteWith"/>
        <reference id="PublishGroup.SyncLocalVsRemote"/>
        <reference id="PublishGroup.SyncLocalVsRemoteWith"/>
      </group>
      <add-to-group group-id="ChangesViewPopupMenu" anchor="last"/>
      <add-to-group group-id="UpdateActionGroup" anchor="last"/>
    </group>
  </actions>
</idea-plugin>
 lib/webDeployment.jar  webpack  Z<idea-plugin package="com.intellij.webpack">
  <name>Webpack</name>
  <id>intellij.webpack</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <category>JavaScript Frameworks and Tools</category>
  <vendor>JetBrains</vendor>
  <description><![CDATA[
  Supports <a href="https://webpack.js.org/">Webpack</a>, a static module bundler for modern JavaScript applications.
  ]]></description>
  <resource-bundle>messages.WebpackBundle</resource-bundle>

  <dependencies>
    <plugin id="JavaScript"/>
  </dependencies>

  <extensions defaultExtensionNs="com.intellij">
    <directoryIndexExcludePolicy implementation="com.intellij.webpack.WebpackExcludePolicy"/>
    <projectConfigurable parentId="Settings.JavaScript"
                         instance="com.intellij.webpack.WebpackConfigurable"
                         id="settings.webpack"
                         bundle="messages.WebpackBundle"
                         key="webpack.configuration.title"
                         nonDefaultProject="true"
    />
    <notificationGroup id="Webpack" displayType="NONE" isLogByDefault="true" bundle="messages.WebpackBundle"
                       key="notification.group.webpack"/>
    <dependencySupport kind="javascript" coordinate="npm:webpack" displayName="Webpack"/>
    <!--<psi.fileReferenceHelper implementation="com.intellij.webpack.WebpackCssFileReferenceHelper"/>-->

    <javascript.json.schema.provider implementation="com.intellij.webpack.jsonschema.Webpack2Provider"/>
    <javascript.json.schema.provider implementation="com.intellij.webpack.jsonschema.Webpack4Provider"/>
    <registryKey key="JavaScript.WebPack.With.JsonSchema" defaultValue="true"
                 description="Use JSON-Schema powered support for webpack config files"/>

    <localInspection language="JavaScript"
                     shortName="WebpackConfigHighlighting"
                     groupPathKey="js.inspection.group.path"
                     key="js.webpack.config.highlighting.name"
                     bundle="messages.WebpackBundle"
                     groupKey="js.inspection.group.name"
                     groupBundle="messages.JavaScriptBundle"
                     enabledByDefault="true"
                     level="WARNING"
                     implementationClass="com.intellij.webpack.WebpackConfigHighlightingInspection"/>
  </extensions>

  <extensions defaultExtensionNs="com.intellij.json">
    <jsonSchemaEnabler implementation="com.intellij.webpack.jsonschema.WebpackJsonSchemaEnabler"/>
  </extensions>

  <extensions defaultExtensionNs="JavaScript">
    <moduleReferenceContributor implementation="com.intellij.webpack.WebpackReferenceContributor"/>
    <webBundlerDefinition implementation="com.intellij.webpack.WebpackBundlerDefinition"/>

    <JsonSchema.ProviderFactory implementation="com.intellij.webpack.jsonschema.Webpack4PluginProviderRegistrar"/>
  </extensions>

  <extensionPoints>
    <extensionPoint name="webpackLocator"
                    interface="com.intellij.webpack.WebpackConfigLocator"
                    dynamic="true"/>
  </extensionPoints>
</idea-plugin> lib/webpack.jar  xml-refactoring  <?xml version="1.0" encoding="UTF-8"?>
<idea-plugin>
  <name>Refactor-X</name>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <category>HTML and XML</category>
  <description>
    <![CDATA[
        New automated XML refactorings for IntelliJ IDEA
        <p></p>
        <p>Originally developed by Sixth and Red River Software.</p>
      ]]>
  </description>
  <vendor>JetBrains</vendor>
  <depends>com.intellij.modules.xml</depends>
  <depends>com.intellij.modules.ultimate</depends>

  <resource-bundle>messages.RefactorXBundle</resource-bundle>
  <actions>
    <group id="XMLRefactoringMenu" class="com.sixrr.xrp.RefactorXMenuGroup" popup="true">
      <add-to-group group-id="RefactoringMenu" anchor="last"/>
      <action id="RenameTagAction" class="com.sixrr.xrp.renametag.RenameTagAction"/>
      <action id="RenameAttributeAction" class="com.sixrr.xrp.renameattribute.RenameAttributeAction"/>
      <action id="DeleteTagAction" class="com.sixrr.xrp.deletetag.DeleteTagAction"/>
      <action id="DeleteAttributeAction" class="com.sixrr.xrp.deleteattribute.DeleteAttributeAction"/>
      <action id="AddAttributeAction" class="com.sixrr.xrp.addattribute.AddAttributeAction"/>
      <action id="AddSubtagAction" class="com.sixrr.xrp.addsubtag.AddSubtagAction"/>
      <action id="ChangeAttributeValueAction" class="com.sixrr.xrp.changeattributevalue.ChangeAttributeValueAction"/>
      <action id="UnwrapTagAction" class="com.sixrr.xrp.unwraptag.UnwrapTagAction"/>
      <action id="WrapTagAction" class="com.sixrr.xrp.wraptag.WrapTagAction"/>
      <action id="WrapTagContentsAction" class="com.sixrr.xrp.wraptagcontents.WrapTagContentsAction"/>
      <action id="ConvertContentsToAttributeAction" class="com.sixrr.xrp.convertcontentstoattribute.ConvertContentsToAttributeAction"/>
      <action id="ReplaceTagWithAttributeAction" class="com.sixrr.xrp.tagtoattribute.TagToAttributeAction"/>
      <action id="ReplaceAttributeWithTagAction" class="com.sixrr.xrp.attributetotag.AttributeToTagAction"/>
      <action id="MoveAttributeInAction" class="com.sixrr.xrp.moveattributein.MoveAttributeInAction"/>
      <action id="MoveAttributeOutAction" class="com.sixrr.xrp.moveattributeout.MoveAttributeOutAction"/>
    </group>
  </actions>
  <extensions defaultExtensionNs="com.intellij">
    <psi.referenceContributor language="XML" implementation="com.sixrr.xrp.RefactorXIntentions"/>
    <intentionAction>
      <language>XML</language>
      <className>com.sixrr.xrp.expandemptytag.ExpandEmptyTagIntention</className>
      <categoryKey>xml.category</categoryKey>
      <bundleName>messages.XmlBundle</bundleName>
    </intentionAction>
    <intentionAction>
      <language>XML</language>
      <className>com.sixrr.xrp.mergetags.MergeTagsIntention</className>
      <categoryKey>xml.category</categoryKey>
      <bundleName>messages.XmlBundle</bundleName>
    </intentionAction>
    <intentionAction>
      <language>XML</language>
      <className>com.sixrr.xrp.attributetotag.AttributeToTagIntention</className>
      <categoryKey>xml.category</categoryKey>
      <bundleName>messages.XmlBundle</bundleName>
    </intentionAction>
    <intentionAction>
      <language>XML</language>
      <className>com.sixrr.xrp.tagtoattribute.TagToAttributeIntention</className>
      <categoryKey>xml.category</categoryKey>
      <bundleName>messages.XmlBundle</bundleName>
    </intentionAction>
    <intentionAction>
      <language>XML</language>
      <className>com.sixrr.xrp.convertentity.ConvertEntityIntention</className>
      <categoryKey>html.inspections.group.name</categoryKey>
      <bundleName>messages.XmlBundle</bundleName>
    </intentionAction>
  </extensions>
</idea-plugin> lib/xml-refactoring.jar  yaml  -<idea-plugin package="org.jetbrains.yaml">
  <name>YAML</name>
  <id>org.jetbrains.plugins.yaml</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <vendor>JetBrains</vendor>
  <category>Languages</category>
  <description><![CDATA[
    Provides syntax highlighting and editor features for <a href="https://yaml.org/">YAML</a> language.
  ]]></description>

  <dependencies>
    <plugin id="com.intellij.modules.lang"/>
  </dependencies>

  <extensions defaultExtensionNs="com.intellij">
    <!-- YAML -->
    <additionalTextAttributes scheme="Default" file="colorSchemes/YAMLDefault.xml"/>
    <additionalTextAttributes scheme="Darcula" file="colorSchemes/YAMLDarcula.xml"/>

    <lang.formatter language="yaml" implementationClass="org.jetbrains.yaml.formatter.YAMLFormattingModelBuilder"/>
    <enterHandlerDelegate implementation="org.jetbrains.yaml.smart.YAMLEnterAtIndentHandler" order="first"/>
    <enterHandlerDelegate implementation="org.jetbrains.yaml.smart.YAMLInjectedElementEnterHandler" order="last"/>
    <registryKey key="yaml.injection.async.indent" defaultValue="true"
                 description="Performs asynchronous indent when typing 'enter' in code injected into YAML"/>
    <typedHandler implementation="org.jetbrains.yaml.formatter.YAMLHyphenTypedHandler"/>
    <quoteHandler fileType="YAML" className="org.jetbrains.yaml.smart.YamlQuoteHandler"/>
    <copyPastePreProcessor implementation="org.jetbrains.yaml.smart.YAMLCopyPasteProcessor"/>
    <statementUpDownMover implementation="org.jetbrains.yaml.smart.YAMLStatementMover" id="yamlStatementMover"
                          order="before line"/>
    <lang.parserDefinition language="yaml" implementationClass="org.jetbrains.yaml.YAMLParserDefinition"/>
    <lang.commenter language="yaml" implementationClass="org.jetbrains.yaml.YAMLCommenter"/>
    <lang.syntaxHighlighterFactory language="yaml" implementationClass="org.jetbrains.yaml.YAMLSyntaxHighlighterFactory"/>
    <colorSettingsPage implementation="org.jetbrains.yaml.YAMLColorsPage"/>
    <lang.braceMatcher language="yaml" implementationClass="org.jetbrains.yaml.YAMLPairedBraceMatcher"/>
    <lang.findUsagesProvider language="yaml" id="yamlFindUsagesProvider" implementationClass="org.jetbrains.yaml.YAMLFindUsagesProvider"/>
    <lang.foldingBuilder language="yaml" id="YAMLFoldingBuilder" implementationClass="org.jetbrains.yaml.folding.YAMLFoldingBuilder"/>
    <fileType name="YAML" implementationClass="org.jetbrains.yaml.YAMLFileType" fieldName="YML" language="yaml" extensions="yaml;yml"/>
    <editor.backspaceModeOverride language="yaml" implementationClass="com.intellij.codeInsight.editorActions.SmartBackspaceDisabler"/>
    <lang.psiStructureViewFactory language="yaml" implementationClass="org.jetbrains.yaml.structureView.YAMLStructureViewFactory"/>
    <langCodeStyleSettingsProvider implementation="org.jetbrains.yaml.YAMLLanguageCodeStyleSettingsProvider"/>
    <lang.whiteSpaceFormattingStrategy language="yaml"
                                       implementationClass="org.jetbrains.yaml.formatter.YamlWhiteSpaceFormattingStrategy"/>
    <stripTrailingSpacesFilterFactory implementation="org.jetbrains.yaml.formatter.YamlStripTrailingSpacesFilterFactory"/>
    <qualifiedNameProvider implementation="org.jetbrains.yaml.navigation.YAMLQualifiedNameProvider"/>
    <pom.declarationSearcher implementation="org.jetbrains.yaml.navigation.YAMLScalarKeyDeclarationSearcher"/>
    <fileBasedIndex implementation="org.jetbrains.yaml.navigation.YAMLKeysIndex"/>
    <searchEverywhereContributor implementation="org.jetbrains.yaml.navigation.YAMLKeysSearchEverywhereContributor$Factory"/>

    <projectService serviceImplementation="org.jetbrains.yaml.YAMLElementGenerator"/>

    <completion.contributor order="after InplaceRename" language="yaml" id="YamlJsonSchema"
                            implementationClass="org.jetbrains.yaml.schema.YamlJsonSchemaCompletionContributor"/>
    <lang.documentationProvider language="yaml" implementationClass="org.jetbrains.yaml.schema.YamlJsonSchemaDocumentationProvider"
                                id="YamlJsonSchemaDocumentationProvider"/>
    <gotoDeclarationHandler implementation="org.jetbrains.yaml.schema.YamlJsonSchemaGotoDeclarationHandler" order="last"/>
    <lang.elementManipulator forClass="org.jetbrains.yaml.psi.impl.YAMLScalarImpl"
                             implementationClass="org.jetbrains.yaml.psi.impl.YAMLScalarElementManipulator"/>
    <lang.elementManipulator forClass="org.jetbrains.yaml.psi.YAMLKeyValue"
                             implementationClass="org.jetbrains.yaml.psi.impl.YAMLKeyValueKeyManipulator"/>
    <breadcrumbsInfoProvider implementation="org.jetbrains.yaml.breadcrumbs.YAMLBreadcrumbsInfoProvider"/>
    <elementDescriptionProvider implementation="org.jetbrains.yaml.psi.impl.YAMLElementDescriptionProvider"/>
    <readWriteAccessDetector implementation="org.jetbrains.yaml.resolve.YAMLAnchorReadWriteAccessDetector"/>
    <renameInputValidator implementation="org.jetbrains.yaml.refactoring.rename.YamlKeyValueRenameInputValidator" order="first"/>
    <renameInputValidator implementation="org.jetbrains.yaml.resolve.YAMLAnchorRenameInputValidator" order="first"/>
    <lang.refactoringSupport language="yaml" implementationClass="org.jetbrains.yaml.resolve.YAMLRefactoringSupportProvider"/>
    <renamePsiElementProcessor implementation="org.jetbrains.yaml.resolve.YAMLRenamePsiElementProcessor"/>
    <languageInjectionContributor implementationClass="org.jetbrains.yaml.schema.YamlJsonSchemaLanguageInjector" language="yaml"/>
    <languageInjectionPerformer implementationClass="org.jetbrains.yaml.YamlLanguageInjectionPerformer" language="yaml"/>
    <lang.inspectionSuppressor language="yaml" implementationClass="org.jetbrains.yaml.YAMLlInspectionSuppressor"/>
    <annotator language="yaml" implementationClass="org.jetbrains.yaml.annotator.YAMLInvalidBlockChildrenErrorAnnotator"/>
    <applicationService serviceImplementation="org.jetbrains.yaml.smart.YAMLEditorOptions"/>
    <editorSmartKeysConfigurable instance="org.jetbrains.yaml.smart.YAMLSmartOptionsProvider"
                                 id="editor.preferences.yamlOptions"
                                 bundle="messages.YAMLBundle"
                                 key="yaml.smartkeys.option.title"/>

    <inspection.basicVisitor class="org.jetbrains.yaml.psi.YamlPsiElementVisitor"/>

    <localInspection language="yaml" bundle="messages.YAMLBundle"
                     shortName="YAMLUnresolvedAlias"
                     key="inspections.unresolved.alias.name" level="ERROR"
                     groupKey="inspections.group.name" enabledByDefault="true"
                     implementationClass="org.jetbrains.yaml.inspections.YAMLUnresolvedAliasInspection"/>
    <localInspection language="yaml" bundle="messages.YAMLBundle"
                     shortName="YAMLRecursiveAlias"
                     key="inspections.recursive.alias.name" level="ERROR"
                     groupKey="inspections.group.name" enabledByDefault="true"
                     implementationClass="org.jetbrains.yaml.inspections.YAMLRecursiveAliasInspection"/>
    <localInspection language="yaml" bundle="messages.YAMLBundle"
                     shortName="YAMLDuplicatedKeys" level="ERROR"
                     key="inspections.duplicated.keys.name"
                     groupKey="inspections.group.name" enabledByDefault="true"
                     implementationClass="org.jetbrains.yaml.inspections.YAMLDuplicatedKeysInspection"/>
    <localInspection language="yaml" bundle="messages.YAMLBundle"
                     shortName="YAMLUnusedAnchor"
                     key="inspections.unused.anchor.name" level="WARNING"
                     groupKey="inspections.group.name" enabledByDefault="true"
                     implementationClass="org.jetbrains.yaml.inspections.YAMLUnusedAnchorInspection"/>

    <localInspection language="yaml" bundle="messages.YAMLBundle"
                     shortName="YAMLIncompatibleTypes"
                     key="inspections.types.mismatch.name" level="WARNING"
                     groupKey="inspections.group.name" enabledByDefault="true"
                     implementationClass="org.jetbrains.yaml.inspections.YAMLIncompatibleTypesInspection"/>

    <localInspection language="yaml" bundle="messages.YAMLBundle"
                     shortName="YAMLSchemaValidation"
                     key="inspections.schema.validation.name"
                     groupKey="inspections.group.name"
                     enabledByDefault="true"
                     level="WARNING"
                     implementationClass="org.jetbrains.yaml.schema.YamlJsonSchemaHighlightingInspection"/>
    <localInspection language="yaml" bundle="messages.YAMLBundle"
                     shortName="YAMLSchemaDeprecation"
                     key="inspections.schema.deprecation.name"
                     groupKey="inspections.group.name"
                     enabledByDefault="true"
                     level="WEAK WARNING"
                     implementationClass="org.jetbrains.yaml.schema.YamlJsonSchemaDeprecationInspection"/>

    <psi.referenceContributor language="yaml" implementation="org.jetbrains.yaml.YAMLWebReferenceContributor"/>
    <psi.referenceContributor language="yaml" implementation="org.jetbrains.yaml.YAMLJsonSchemaIdReferenceContributor"/>
    <completion.contributor language="yaml" implementationClass="org.jetbrains.yaml.YAMLJsonSchemaInCommentCompletionContributor"/>

    <pluginSuggestionProvider implementation="org.jetbrains.yaml.swagger.OpenApiSuggestionProvider"/>
    <intentionAction>
      <language>yaml</language>
      <className>org.jetbrains.yaml.intentions.YAMLAddOptionalPropertiesIntention</className>
      <bundleName>messages.YAMLBundle</bundleName>
      <categoryKey>yaml.intention.category.name</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>yaml</language>
      <className>org.jetbrains.yaml.refactoring.inlineExpandConversion.YAMLExpandCollectionIntentionAction</className>
      <bundleName>messages.YAMLBundle</bundleName>
      <categoryKey>yaml.intention.category.name</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>yaml</language>
      <className>org.jetbrains.yaml.refactoring.inlineExpandConversion.YAMLExpandAllCollectionsInsideIntentionAction</className>
      <bundleName>messages.YAMLBundle</bundleName>
      <categoryKey>yaml.intention.category.name</categoryKey>
    </intentionAction>
    <intentionAction>
      <language>yaml</language>
      <className>org.jetbrains.yaml.refactoring.inlineExpandConversion.YAMLInlineCollectionIntentionAction</className>
      <bundleName>messages.YAMLBundle</bundleName>
      <categoryKey>yaml.intention.category.name</categoryKey>
    </intentionAction>
  </extensions>

  <extensions defaultExtensionNs="com.intellij.json">
    <jsonLikePsiWalkerFactory implementation="org.jetbrains.yaml.schema.YamlJsonLikePsiWalkerFactory"/>
    <jsonSchemaEnabler implementation="org.jetbrains.yaml.schema.YamlJsonEnabler"/>
  </extensions>

  <extensions defaultExtensionNs="com.intellij.spellchecker">
    <support language="yaml" implementationClass="org.jetbrains.yaml.YAMLSpellcheckerStrategy"/>
  </extensions>

  <extensionPoints>
    <extensionPoint qualifiedName="com.intellij.yaml.customStructureViewFactory"
                    interface="org.jetbrains.yaml.structureView.YAMLCustomStructureViewFactory"
                    dynamic="true">
    </extensionPoint>
  </extensionPoints>

</idea-plugin> lib/yaml.jar  emojipicker  <!-- Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<idea-plugin implementation-detail="true">
  <name>Emoji Picker</name>
  <category>Other Tools</category>
  <id>org.jetbrains.plugins.emojipicker</id>
  <version>241.17890.21</version>
  <idea-version since-build="241.17890.21" until-build="241.17890.21"/>
  <vendor>JetBrains</vendor>
  <description>
    <![CDATA[
      Popup window, allowing to select and insert emoji into editor & text fields.
      Can be opened with <b>Edit > Emoji & Symbols</b> as well as through context
      menu or keyboard shortcut (<b>Ctrl + Alt + ;</b> by default)
    ]]>
  </description>
  <depends>com.intellij.modules.platform</depends>

  <resource-bundle>messages.EmojipickerBundle</resource-bundle>

  <actions>
    <action id="EmojiPicker.Open" class="org.jetbrains.plugins.emojipicker.action.OpenEmojiPickerAction">
      <add-to-group group-id="EditMenu" anchor="before" relative-to-action="EmojiAndSymbols"/>
      <keyboard-shortcut keymap="$default" first-keystroke="control alt SEMICOLON"/>
    </action>
  </actions>

</idea-plugin> lib/emojipicker.jar